Представлен релиз проекта QEMU 10.2.0. В качестве эмулятора QEMU позволяет запустить программу, собранную для одной аппаратной платформы на системе с совершенно иной архитектурой, например, выполнить приложение для ARM на x86-совместимом ПК. В режиме виртуализации в QEMU производительность выполнения кода в изолированном окружении близка к аппаратной системе за счёт прямого выполнения инструкций на CPU и задействования гипервизора Xen или модуля KVM в Linux, или модуля NVMM в NetBSD.
Изначально проект был создан Фабрисом Белларом (Fabrice Bellard) с целью обеспечения возможности запуска собранных для платформы x86 исполняемых файлов Linux на архитектурах, отличных от x86. За годы разработки была добавлена поддержка полной эмуляции для 14 аппаратных архитектур, число эмулируемых аппаратных устройств превысило 400. При подготовке версии 10.2.0 внесено более 2200 изменений от 188 разработчиков.
Ключевые улучшения, добавленные в QEMU 10.2:
- В бэкенд 9pfs, позволяющий использовать сетевую файловую систему Plan 9 для доступа одной виртуальной машины к другой, добавлена поддержка FreeBSD.
- Добавлен новый режим Live-миграции ‘cpr-exec’, позволяющий снизить потребление ресурсов во время обновления виртуальных машин и потенциально повторно использовать при обновлении существующие состояния и соединения.
- Основной цикл обработки событий в QEMU переведён на использование интерфейса асинхронного ввода/вывода io_uring на системах с его поддержкой, что приводит к повышению производительности.
- Улучшена эмуляция в режиме user-mode, позволяющем запускать отдельные процессы, собранные для другого CPU. Реализован системный вызов fchmodat2, добавлена поддержка флагов MADV_DONTDUMP и MADV_DODUMP, улучшена поддержка архитектур aarch64, hppa, и microblaze.
- В эмулятор архитектуры ARM добавлена поддержка модели платы amd-versal2-virt с реализацией виртуального SoC AMD Versal. Улучшена поддержка плат ‘AST2600’, ‘AST2700’, ‘AST1030’ и ‘xlnx-zynqmp. Реализована эмуляция расширений CPU FEAT_SCTLR2, FEAT_TCR2, FEAT_CSSC, FEAT_LSE128, FEAT_ATS1A, FEAT_RME_GPC2, FEAT_AIE, FEAT_MEC и FEAT_GCS.
- В эмулятор архитектуры HPPA добавлена возможность эмуляции рабочей станции HP 715/64, SCSI-контроллера NCR 53c710 и контроллера ввода/вывода HP LASI.
- В эмулятор архитектуры PowerPC добавлена поддержка CPU PowerNV11 и PPE42. Для оборудования pSeries реализован механизм FADUMP (Firmware-Assisted Dump) для создания дампов состояния после сбоя системы.
- В эмуляторе архитектуры RISC-V реализован API MonitorDef HMP, до версии 1.7 обновлён OpenSBI (Open Supervisor Binary Interface), внесена большая порция исправлений.
- В эмуляторе архитектуры s390x для повышения производительности virtio-pci задействована технология подстановки виртуальных прерываний при помощи irqfd.
Источник: opennet.ru
