QEMU 6.2 emuliatoriaus išleidimas

Pristatomas QEMU 6.2 projekto leidimas. Kaip emuliatorius, QEMU leidžia paleisti programą, sukurtą vienai aparatinės įrangos platformai, sistemoje su visiškai kitokia architektūra, pavyzdžiui, paleisti ARM programą su x86 suderinamame kompiuteryje. Virtualizavimo režimu QEMU kodo vykdymas izoliuotoje aplinkoje yra artimas aparatinės įrangos sistemai dėl tiesioginio komandų vykdymo CPU ir Xen hipervizoriaus arba KVM modulio naudojimo.

Iš pradžių projektą sukūrė Fabrice'as Bellardas, kad „Linux“ vykdomieji failai, sukurti x86 platformai, galėtų veikti ne x86 architektūrose. Per kūrimo metus pilnas emuliacijos palaikymas buvo pridėtas 14 techninės įrangos architektūrų, emuliuojamų aparatūros įrenginių skaičius viršijo 400. Rengiantis 6.2 versijai, iš 2300 kūrėjų buvo atlikta daugiau nei 189 pakeitimų.

Pagrindiniai QEMU 6.2 patobulinimai:

  • В механизм virtio-mem, позволяющий выполнять горячее подключение и отключение памяти к виртуальным машинам, добавлена полная поддержка дампов памяти гостевых систем, операций копирования перед и после миграции окружения (pre-copy/post-copy) и создания снапшотов гостевой системы в фоновом режиме.
  • В QMP (QEMU Machine Protocol) реализована обработка ошибок DEVICE_UNPLUG_GUEST_ERROR, возникающих на стороне гостевой системы в случае сбоев при выполнении операций горячего подключения оборудования.
  • Расширен синтаксис загрузочных аргументов, обрабатываемых в плагинах к классическому генератору кода TCG (Tiny Code Generator). В плагин «cache» добавлена поддержка многоядерных систем.
  • В эмуляторе архитектуры x86 реализована поддержка модели CPU Intel Snowridge-v4. Добавлена поддержка доступа к анклавам Intel SGX (Software Guard eXtensions) из гостевых систем, используя устройство /dev/sgx_vepc на стороне хост-системы и бэкенд «memory-backend-epc» в QEMU. Для гостевых систем, защищаемых при помощи технологии AMD SEV (Secure Encrypted Virtualization), добавлена возможность верифицируемого прямого (без использования загрузчика) запуска ядра (включается выставлением параметра ‘kernel-hashes=on’ в ‘sev-guest’).
  • В эмуляторе ARM на хост-системах с чипом Apple Silicon реализована поддержка механизма аппаратного ускорения «hvf» при запуске гостевых систем на базе архитектуры AArch64. Добавлена поддержка эмуляции модели процессоров Fujitsu A64FX. Реализован новый тип эмулируемых машин «kudo-mbc». Для машин ‘virt’ добавлена поддержка эмуляции ITS (Interrupt Translation Service) и возможность использования более 123 CPU в режиме эмуляции. Для эмулируемых машин «xlnx-zcu102» и «xlnx-versal-virt» добавлена поддержка устройств BBRAM и eFUSE. Для систем на базе чипа Cortex-M55 предоставлена поддержка мобильного профиля процессорных расширений MVE.
  • В эмулятор архитектуры PowerPC добавлена начальная поддержка модели CPU POWER10 DD2.0. Для эмулируемых машин «powernv» улучшена поддержка архитектуры POWER10, а для машин ‘pseries’ добавлены описания FORM2 PAPR NUMA.
  • В эмулятор архитектуры RISC-V добавлена поддержка расширений набора инструкций Zb[abcs]. Для всех эмулируемых машин разрешено применение опций «host-user» и «numa mem». Добавлена поддержка SiFive PWM (Pulse-width modulator).
  • В эмуляторе архитектуры 68k улучшена поддержка предложенной компанией Apple шины NuBus, включая возможность загрузки образов ПЗУ и поддержку слотов прерываний.
  • В блочном устройстве qemu-nbd по умолчанию включён режим кэширования операций записи («writeback» вместо «writethrough») для соответствия поведению qemu-img. Добавлена опция «—selinux-label» для выставления меток SELinux Unix-сокетам.

Šaltinis: opennet.ru

Добавить комментарий