የQEMU 11.0.0 ፕሮጀክት መለቀቅ ቀርቧል። እንደ ኢሙሌተር፣ QEMU ለአንድ ሃርድዌር ፕላትፎርም የተጠናቀረ ፕሮግራምን ሙሉ ለሙሉ የተለየ አርክቴክቸር ባለው ሲስተም እንዲያካሂዱ ይፈቅድልሃል፣ ለምሳሌ የ ARM መተግበሪያን በ x86-ተኳሃኝ ፒሲ ላይ ያሂዱ። በ QEMU ውስጥ በምናባዊ ሁነታ በገለልተኛ አካባቢ የኮድ አፈፃፀም አፈፃፀም ከሃርድዌር ስርዓቱ ጋር ቅርብ ነው በሲፒዩ ላይ መመሪያዎችን በቀጥታ አፈፃፀም እና የXen hypervisor ወይም የ KVM ሞጁል በሊኑክስ ውስጥ ወይም በ NVMM ሞጁል ውስጥ NetBSD
ፕሮጀክቱ በመጀመሪያ የተፈጠረው ለ x86 መድረክ የተገነቡ የሊኑክስ ፈጻሚዎች x86 ባልሆኑ አርክቴክቸር እንዲሰሩ ለማስቻል በፋብሪስ ቤላርድ ነው። በዕድገት ዓመታት ውስጥ ለ 14 የሃርድዌር አርክቴክቸር ሙሉ የማስመሰል ድጋፍ ተጨምሯል ፣ የተመሰሉት የሃርድዌር መሳሪያዎች ብዛት ከ 400 በላይ ሆኗል ። ለ 11.0.0 ስሪት በመዘጋጀት ከ 2500 ገንቢዎች ከ 237 በላይ ለውጦች ተደርገዋል።
በQEMU 11.0 ውስጥ የተጨመሩ ቁልፍ ማሻሻያዎች፡-
- Удалена поддержка 32-разрядных хост-систем, которая была объявлена устаревшей в апреле прошлого года в QEMU 10.0. В декабрьском выпуске 10.2 в генераторе кода TCG (Tiny Code Generator) была прекращена поддержка платформ mips32 и ppc32, а в выпуске QEMU 11.0 удалены оставшиеся платформы i386, arm, ppc и riscv32, а также проведена чистка кодовой базы и сборочной системы от компонентов для работы на 32-разрядных хостах.
- Реализован ускоритель виртуализации «nitro» («-accel nitor») и новый тип эмулируемых систем «nitro», позволяющий запускать в QEMU изолированные анклавы на базе технологии конфиденциальных вычислений AWS Nitro Enclave, например, для локального тестирования в QEMU окружений Nitro Enclave. В AWS EC2 технология Nitro Enclave позволяет запускать в виртуальной машине вложенные изолированные анклавы для работы с конфиденциальными данными, выделяя им часть своих ресурсов.
- Улучшена поддержка ускорителей виртуализации MSHV (Microsoft Hypervisor) и WHPX (Microsoft Windows Hypervisor Platform Extensions).
- При использовании гипервизора KVM («-accel kvm») предоставлена поддержка виртуализации расширения Intel CET (Control-flow Enforcement Technology) для применения в ምናባዊ ማሽኖች защиты от эксплоитов, использующих методы возвратно-ориентированного программирования (ROP — Return-Oriented Programming). Также добавлена поддержка перезагрузки конфиденциальных ምናባዊ ማሽኖች, использующих для шифрования памяти расширения AMD SEV-SNP (Secure Encrypted Virtualization — Secure Nested Paging) и Intel TDX (Trust Domain Extensions).
- В устройство VirtIO-GPU, обеспечивающее работу виртуального GPU, добавлена возможность выставления отличающихся разрешений экрана для разных устройств вывода.
- В VirtIO-GPU добавлена поддержка контекстов DRM (Direct Rendering Manager native context), позволяющих повысить производительность работы с виртуальным GPU из гостевой системы за счёт прямой передачи команд в реальный хостовый GPU. Поддержка контекстов DRM включается при использовании нового устройства virtio-gpu-gl с опцией «drm_native_context=on». В отличие от контекстов Virgl и Venus, работающих на уровне API OpenGL и Vulkan, контекст DRM реализован на уровне UAPI ядра Linux.
- Добавлена возможность использования языка C++ для разработки плагинов к генератору кода TCG (Tiny Code Generator).
- В блочный драйвер NFS добавлена поддержка сборки с библиотекой libnfs 6.
- В блочный драйвер curl добавлена опция «force-range» для принудительного использования HTTP-заголовка «Range» при загрузке изображений без предварительной проверки его поддержки отдельным запросом с заголовком HEAD.
- В блочном драйвере FUSE отключена обработка операций экспорта в синхронном режиме, приводивших к блокировке запуска виртуальной машины до окончания обработки других FUSE-запросов. Добавлена возможность использования нескольких потоков ввода/вывода (iothread) при выполнении экспорта в FUSE.
- В эмулятор архитектуры x86 добавлена поддержка CPU Intel Diamond Rapids («Xeon 7»).
- В эмулятор архитектуры ARM добавлена процессорных расширений FEAT_ASID2 и FEAT_E2H0. В генераторе кода TCG реализована эмуляция расширений SME (Scalable Matrix Extension).
- В эмулятор архитектуры HPPA добавлена поддержка эмуляции 64-разрядных CPU c 40- и 44-разрядным адресным пространством. При помощи SeaBIOS-hppa 24 обеспечена инициализация PCI-контроллера Astro, позволяющая использовать PCI-видеокарты на 64-рядных системах.
- В эмуляторе архитектуры LoongArch появилась возможность миграции PMU (Performance Monitoring Unit) при использовании гипервизора KVM. В генераторе кода TCG реализована эмуляция расширений LA v1.1, sc.q и llacq/screl, а также инструкций FRECIP и DRECIP для вычисления обратных значений.
- В эмулятор архитектуры PowerPC добавлена поддержка снапршотов.
- В эмуляторе архитектуры RISC-V реализована поддержка CPU MIPS P8700 и расширений набора команд Zilsd, Zclsd, ZALASR и Smpmpmt.
- В эмуляторе архитектуры s390 появилась поддержка загрузки с устройств virtio-blk-pci и реализована эмуляции инструкции «DIVIDE TO INTEGER».
- Принято исправление, в 50-80 раз сокращающее задержки при работе fdmon (file descriptor monitoring) в режиме «aio=io_uring» и нахождении системы в состоянии простоя (idle).
ምንጭ: opennet.ru
