QEMU 7.1 эмуляторыг гаргасан

QEMU 7.1 төслийн хувилбарыг танилцууллаа. Эмуляторын хувьд QEMU нь нэг техник хангамжийн платформд зориулж боловсруулсан програмыг огт өөр архитектуртай систем дээр ажиллуулах боломжийг олгодог, жишээлбэл, x86-тай нийцтэй компьютер дээр ARM програмыг ажиллуулах. QEMU дахь виртуалчлалын горимд тусгаарлагдсан орчинд код гүйцэтгэх гүйцэтгэл нь CPU дээрх зааврыг шууд гүйцэтгэж, Xen hypervisor эсвэл KVM модулийг ашигласнаар техник хангамжийн системийн гүйцэтгэлтэй ойролцоо байна.

Уг төслийг Fabrice Bellard анх x86 платформд зориулан бүтээгдсэн Линукс программуудыг x86 бус архитектур дээр ажиллуулах боломжийг олгох зорилгоор бүтээжээ. Хөгжлийн жилүүдэд 14 техник хангамжийн архитектурт бүрэн эмуляцын дэмжлэг нэмэгдэж, дуурайлган хийсэн техник хангамжийн төхөөрөмжийн тоо 400-аас давсан. 7.1 хувилбарт бэлтгэхийн тулд 2800 хөгжүүлэгчээс 238 гаруй өөрчлөлт хийсэн.

QEMU 7.1-д нэмсэн гол сайжруулалтууд:

  • На платформе Linux реализована опция zero-copy-send, позволяющая организовать передачу страниц памяти при live-миграции без промежуточной буферизации.
  • В QMP (QEMU Machine Protocol) добавлена возможность использования команды block-export-add для экспорта образов NBD с данным о страницах в состоянии «dirty». Также добавлены новые команды ‘query-stats’ и ‘query-stats-schema’ для запроса статистики из различных подсистем QEMU.
  • В агенте для гостевых систем улучшена поддержка платформы Solaris и добавлены новые команды ‘guest-get-diskstats’ и ‘guest-get-cpustats’ для отображения состояния дисков и CPU. В команду ‘guest-get-disks’ добавлен вывод информации из NVMe SMART, а в команду ‘guest-get-fsinfo’ вывод данных о типе шины NVMe.
  • Добавлен новый эмулятор LoongArch с поддержкой 64-разрядного варианта архитектуры набора команд LoongArch (LA64). Эмулятором поддерживаются процессоры Loongson 3 5000 и северные мосты Loongson 7A1000.
  • В эмуляторе ARM реализованы новые типы эмулируемых машин: Aspeed AST1030 SoC, Qaulcomm и AST2600 / AST1030 (fby35). Добавлена поддержка эмуляции CPU Cortex-A76 и Neoverse-N1, а также процессорных расширений SME (Scalable Matrix Extensions), RAS (Reliability, Availability, Serviceability) и команд для блокирования утечек из внутреннего кэша в ходе спекулятивного выполнения инструкций на CPU. Для машин ‘virt’ реализована эмуляция контроллера прерываний GICv4.
  • В эмуляторе архитектуры x86 для KVM добавлена поддержка виртуализации механизма трассировки LBR (Last Branch Record).
  • В эмуляторе архитектуры HPPA предложена новая прошивка на базе SeaBIOS v6, поддерживающая использование клавиатуры PS/2 в загрузочном меню. Улучшена эмуляция последовательного порта. Добавлены дополнительные консольные шрифты STI.
  • В эмуляторе архитектуры MIPS для плат Nios2 (-machine 10m50-ghrd) реализована эмуляция векторного контроллера прерывания (Vectored Interrupt Controller) и теневого набора регистров. Улучшена обработка исключений.
  • В эмуляторе архитектуры OpenRISC для машины ‘or1k-sim’ добавлена возможность использования до 4 UART-устройств 16550A.
  • В эмулятор архитектуры RISC-V добавлена поддержка новых расширений набора команд (ISA), определённых в спецификации 1.12.0, а также добавлена поддержка расширения Sdtrig и улучшена поддержка векторных инструкций. Расширены возможности для отладки. В эмулируемую машину ‘virt’ добавлена поддержка TPM (Trusted Platform Module), а в машину ‘OpenTitan’ — поддержка Ibex SPI.
  • В эмуляторе архитектуры 390x обеспечена поддержка расширений VEF 2 (Vector-Enhancements Facility 2). В s390-ccw BIOS реализована возможность загрузки с дисков, имеющих размер сектора, отличный от 512 байт.
  • В эмулятор архитектуры Xtensa добавлена поддержка ядер lx106 и объектных кодов для тестирования кэша.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх