Vrijgave van de QEMU 5.1-emulator

Geïntroduceerd project vrijgeven QEMU 5.1. Als emulator kunt u met QEMU een programma uitvoeren dat is gecompileerd voor één hardwareplatform op een systeem met een geheel andere architectuur, bijvoorbeeld een ARM-applicatie uitvoeren op een x86-compatibele pc. In de virtualisatiemodus in QEMU liggen de prestaties van code-uitvoering in een geïsoleerde omgeving dicht bij die van het oorspronkelijke systeem, dankzij de directe uitvoering van instructies op de CPU en het gebruik van de Xen-hypervisor of KVM-module.

Het project is oorspronkelijk gemaakt door Fabrice Bellard om Linux-uitvoerbare bestanden die zijn gebouwd voor het x86-platform te laten draaien op niet-x86-architecturen. In de loop van de jaren van ontwikkeling is volledige emulatieondersteuning toegevoegd voor 14 hardware-architecturen, het aantal geëmuleerde hardware-apparaten is de 400 overschreden. Ter voorbereiding op versie 5.1 zijn er meer dan 2500 wijzigingen aangebracht door 235 ontwikkelaars.

Toets verbeteringentoegevoegd in QEMU 5.1:

  • Добавлена поддержка эмуляции CPU на базе архитектуры AVR. Реализована поддержка плат Arduino Duemilanove (ATmega168), Arduino Mega 2560 (ATmega2560),
    Arduino Mega (ATmega1280) и Arduino UNO (ATmega328P).

  • В эмулятор архитектуры ARM добавлена возможность горячего отключения памяти (hot-unplug), а также горячего подключения памяти nvdimm для гостевых систем с ACPI. Реализована поддержка расширений ARMv8.2 TTS2UXN и ARMv8.5 MemTag. Обеспечена поддержка платы sonorapass-bmc.
  • В эмулятор архитектуры MIPS добавлена поддержка CPU Loongson 3A CPUs (R1 и R4). Повышена производительность эмуляции инструкций FPU и MSA.
  • В эмулятор архитектуры RISC-V добавлена поддержка CPU SiFive E34 и Ibex. Реализована поддержка плат HiFive1 revB и OpenTitan. Для машин Spike предоставлена поддержка более одного CPU.
  • В эмуляторе архитектуры PowerPC появилась поддержка восстановления ошибок в гостевых системах при помощи FWNMI.
  • Для архитектуры s390 добавлена поддержка KVM для защищённой виртуализации (режим безопасного выполнения).
  • В эмуляторе архитектуры x86 сокращены накладные расходы на виртуализацию неадаптированных гостевых систем с Windows, через предоставление таблицы эмулируемых устройств ACPI WAET (Windows ACPI Emulated Device Table). Улучшена поддержка ускорения HVF для macOS.
  • В драйвере блочных устройств появилась поддержка виртуальных устройств хранения с логическими и физическими блоками размером 2MB.
  • Добавлена возможность передачи в QEMU паролей и ключей для шифрования через keyring ядра Linux при помощи объектов нового типа «secret-keyring».
  • Для формата qcow2 реализована поддержка алгоритма сжатия zstd.
  • В утилите qemu-img добавлена новая команда ‘bitmap’ для манипуляции постоянными битовыми картами в файлах qcow2. В qemu-img также реализовано управления ключами LUKS (keyslot) и предложены дополнительные возможности для команд «map» (—start-offset, —max-length) и «convert» (—bitmaps), в команде «measure» добавлен вывод сведений о размере постоянных битовых карт в файлах qcow2.
  • В драйвере NVMe появилась поддержка постоянных областей памяти (Persistent Memory Region), появившихся в спецификации NVMe 1.4.
  • В virtio для гостевых систем c классическим генератором кода TCG (Tiny Code Generator) реализована возможность использования процессов vhost-user, включая virtiofsd. В vhost-user добавлено расширение VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS, позволяющее регистрировать более 8 слотов ОЗУ.

Bron: opennet.ru

Voeg een reactie