Випуск емулятора QEMU 7.0

Подано реліз проекту QEMU 7.0. Як емулятор QEMU дозволяє запустити програму, зібрану для однієї апаратної платформи, на системі з зовсім іншою архітектурою, наприклад, виконати додаток для ARM на x86-сумісному ПК. В режимі віртуалізації QEMU продуктивність виконання коду в ізольованому оточенні близька до апаратної системи за рахунок прямого виконання інструкцій на CPU і залучення гіпервізора Xen або модуля KVM.

Спочатку проект був створений Фабрисом Белларом (Fabrice Bellard) з метою забезпечення можливості запуску зібраних для платформи x86 файлів Linux, що виконуються, на архітектурах, відмінних від x86. За роки розробки було додано підтримку повної емуляції для 14 апаратних архітектур, кількість емульованих апаратних пристроїв перевищила 400. Під час підготовки версії 7.0 внесено понад 2500 змін від 225 розробників.

Ключові покращення, додані в QEMU 7.0:

  • У емуляторі архітектури x86 додано підтримку набору інструкцій Intel AMX (Advanced Matrix Extensions), реалізованих у серверних процесорах Intel Xeon Scalable. AMX пропонує нові регістри TMM «TILE», що настроюються, і інструкції для маніпуляції з даними в цих регістрах, такі як TMUL (Tile matrix MULtiply) для множення матриць.
  • Надано можливість журналування подій ACPI від гостьової системи через інтерфейс ACPI ERST.
  • У модулі virtiofs, що застосовується для прокидання частини файлової системи хост-оточення в гостьову систему, покращена підтримка міток безпеки (security label). Усунена вразливість CVE-2022-0358, що дозволяє підняти свої привілеї в системі через створення виконуваних файлів у каталогах, що проникаються через virtiofs, що належать іншій групі і забезпечені прапором SGID.
  • Підвищена гнучкість резервного копіювання активних системних образів, що знаходяться в роботі (створюється снапшот, після чого для актуалізації стану снапшота застосовується фільтр copy-before-write (CBW), що копіює дані з областей, в які гостьова система виконує запис). Додано підтримку образів у форматах, відмінних від qcow2. Забезпечена можливість доступу до снапшота з бекапом не безпосередньо, а через драйвер блокового пристрою snapshot-access. Розширені можливості управління роботою фільтра CBW, наприклад, можна виключати з обробки певні бітові карти.
  • В емуляторі ARM для машин 'virt' додано підтримку virtio-mem-pci, визначення топології CPU для гостьової системи та включення PAuth при використанні гіпервізора KVM з прискорювачем hvf. У емуляторі плат 'xlnx-versal-virt' додана підтримка PMC SLCR та емуляції контролера Flash-пам'яті OSPI. Для емульованих машин 'xlnx-zynqmp' додано нові моделі управління CRF та APU. Додана емуляція розширень FEAT_LVA2, FEAT_LVA (Large Virtual Address space) та FEAT_LPA (Large Physical Address space).
  • У класичному генераторі коду TCG (Tiny Code Generator) припинено підтримку хостів з CPU ARMv4 та ARMv5, у яких відсутня підтримка невирівняного доступу до пам'яті та недостатньо ОЗУ для виконання QEMU.
  • До емулятора архітектури RISC-V додано підтримку гіпервізора KVM та реалізовано векторні розширення Vector 1.0, а також інструкції Zve64f, Zve32f, Zfhmin, Zfh, zfinx, zdinx та zhinx{min}. Для емульованих машин 'spike' додано підтримку завантаження бінарних файлів OpenSBI (RISC-V Supervisor Binary Interface). Для емульованих машин 'virt' реалізована можливість використання до 32 процесорних ядер та підтримка AIA.
  • У емуляторі архітектури HPPA надано можливість використання до 16 vCPU та покращено графічний драйвер для користувацьких оточень HP-UX VDE/CDE. Додано можливість зміни порядку завантаження для SCSI-пристроїв.
  • В емуляторі архітектури OpenRISC для плат 'sim' додана підтримка використання до 4 ядер CPU, завантаження зовнішнього образу initrd та автоматичної генерації device tree для ядра, що завантажується.
  • В емулятор PowerPC для емульованих машин 'pseries' реалізована можливість запуску гостьових систем під управлінням вкладеного гіпервізора KVM. Додано підтримку пристрою spapr-nvdimm. Для емульованих машин 'powernv' додана підтримка контролера переривань XIVE2 та контролерів PHB5, покращена підтримка XIVE та PHB 3/4.
  • У емулятор архітектури s390x додано підтримку розширень z15 (Miscellaneous-Instruction-Extensions Facility 3).

Джерело: opennet.ru

Додати коментар або відгук