Rhyddhau efelychydd QEMU 11.0.0

Mae rhyddhau'r prosiect QEMU 11.0.0 wedi'i gyflwyno. Fel efelychydd, mae QEMU yn caniatáu ichi redeg rhaglen a luniwyd ar gyfer un platfform caledwedd ar system gyda phensaernïaeth hollol wahanol, er enghraifft, rhedeg rhaglen ARM ar gyfrifiadur personol sy'n gydnaws â x86. Yn y modd rhithwiroli yn QEMU, mae perfformiad gweithredu cod mewn amgylchedd ynysig yn agos at y system galedwedd oherwydd gweithrediad uniongyrchol y cyfarwyddiadau ar y CPU a defnyddio'r hypervisor Xen neu'r modiwl KVM yn Linux, neu'r modiwl NVMM yn NetBSD.

Crëwyd y prosiect yn wreiddiol gan Fabrice Bellard i ddarparu'r gallu i redeg gweithredoedd gweithredadwy Linux a luniwyd ar gyfer y platfform x86 ar bensaernïaeth nad yw'n x86. Dros y blynyddoedd o ddatblygiad, ychwanegwyd cefnogaeth ar gyfer efelychiad llawn ar gyfer 14 pensaernïaeth caledwedd, roedd nifer y dyfeisiau caledwedd efelychiedig yn fwy na 400. Wrth baratoi fersiwn 11.0.0, gwnaed mwy na 2500 o newidiadau gan 237 o ddatblygwyr.

Gwelliannau allweddol a ychwanegwyd at 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) для применения в peiriannau rhithwir защиты от эксплоитов, использующих методы возвратно-ориентированного программирования (ROP — Return-Oriented Programming). Также добавлена поддержка перезагрузки конфиденциальных peiriannau rhithwir, использующих для шифрования памяти расширения 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).

    Ffynhonnell: opennet.ru

Ychwanegu sylw