Издаване на емулятора QEMU 8.2

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

Проектът първоначално е създаден от Фабрис Беллар (Fabrice Bellard) с цел осигуряване на възможност за стартиране на компилирани изпълними файлове на Linux за платформа x86 на архитектури, различни от x86. През годините на разработка е добавена поддръжка за пълна емулация за 14 хардуерни архитектури, а броят на емулираните хардуерни устройства надхвърля 400. При подготовката на версия 8.2 са внесени над 3200 изменения от 238 разработчици.

Ключови подобрения, добавени в QEMU 8.2:

  • Добавено е устройство virtio-sound, позволяващо емулация на звукова карта за запис и възпроизвеждане на звук в гостуваща система чрез звуков бекенд (pulseaudio, sdl или coreaudio), работещ на страната на хост системата. За емулация на звуковото устройство в ядрото на Linux за гостуващата система, опцията CONFIG_SND_VIRTIO трябва да бъде включена.
  • Добавен е виртуален графичен интерфейс (VGI, Virtual Graphics Interface) rutabaga с реализация на виртуален GPU (virtio-gpu), напомнящ на предишния VirGL и също така позволяващ използване в гостуващата система на виртуален GPU за 3D-рендеринг, без откритие на ексклузивен достъп до физическия GPU. Кодът rutabaga е разработен в рамките на проекта Android/CrosVM и позволява използването на емулационната платформа Android с обикновен QEMU.
  • Добавено е устройство hv-balloon с реализация на протокола за динамично управление на паметта (Dynamic Memory) за Hyper-V, позволяващо по време на работа да се връщат неизползваеми страници памет на хост системата и да се искат допълнителни в случай на недостиг на памет. Новото устройство може да се разглежда като алтернатива на virtio-balloon за гостуващи системи с Windows, използваща на страната на хост системата бекенд, който поддържа протокола Dynamic Memory.
  • Предложено е устройство Universal Flash Storage за емулация на Flash-накопител.
  • В драйвера на блокови устройства NBD (Network Block Device) е добавена поддръжка на разширение на протокола, което използва 64-битови офсети за повишаване на производителността при манипулиране на големи данни.
  • Към командата dump-guest-memory е добавена поддръжка за изход в стандартен формат kdump.
  • Добавена е поддръжка за емулация на UFS, използвайки новите устройства ufs и ufs-lu.
  • Към VFIO (Virtual Function I/O) е добавена поддръжка за P2P режим на миграция и е реализирана възможността за динамично разпределение на MSI-X. Подготвено е преминаването към нов бекенд IOMMUFD.
  • В устройството virtio-mem е реализиран режим „dynamic-memslots=on“ за динамично разпределение на няколко слота за памет вместо статично разпределение на един голям слот. Използването на режима позволява намаляване на консумацията на памет на големи устройства virtio-mem, които предоставят на виртуалната машина малък обем памет.
  • В емулатора на архитектура x86 при емулация на хипервизорна среда Xen на базата на KVM е осигурена поддръжка на конзола PV и мрежови устройства, а командите за блокови и мрежови устройства са опростени. В класическия генератор на кода TCG е добавена поддръжка за инструкции SHA.
  • В емулатора на архитектура ARM е реализирана емулация на CPU Cortex-A710 и Neoverse-N2. Добавена е поддръжка на разширения на процесора PACQARMA3, EPAC, Pauth2, FPAC, FPACCOMBINE, TIDCP1, MOPS, HBC и HPMN0. За платката Xilinx Versal е реализирано моделиране на устройства CFU/CFI и TRNG.
  • В емулатора на архитектура RISC-V е реализиран набор от векторни криптографски инструкции. Добавена е поддръжка на виртуални IRQ и филтриране на IRQ. Стабилизирана е поддръжката на разширения Zicond. Добавена е поддръжка на разширения за виртуализация AIA (Advanced Interrupt Architecture) чрез KVM.
  • В емулатора на архитектура HPPA е осигурена емулация на 64-битов CPU PA-RISC 2.0 и емулация на система C3700, включително контролер на паметта Astro и PCI мостове Elroy.
  • В емулатора на архитектура LoongArch е реализирана емулация на CPU Loongson LA132. Добавена е поддръжка на разширението на набор от команди LASX и инструкции PRELDX.
  • В емулатора на архитектура s390x е добавена поддръжка vfio-ap за проброс на адаптера crypto за защитени гостуващи системи.
  • В емулатора Tricore е добавена поддръжка на процесори TC37x (ISA 1.6.2) и инструкции CRCN, FTOU, FTOHP, HPTOF.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster