Pull to refresh

Вышел эмулятор QEMU 8.1. Что нового? Немного подробностей

Reading time3 min
Views15K

На днях был представлен новый релиз QEMU, QEMU 8.1. Он дает возможность запускать софт, написанный, например, под ARM, на ПК с x86. При этом производительность эмулятора почти такая же, как при запуске такого ПО на «родной» архитектуре. Этого удается добиться за счет выполнения прямого инструкций на CPU и использования возможностей гипервизора Xen или модуля KVM. Что разработчики изменили в новой версии?

Одно из ключевых нововведениий — новые возможности в модулях virtio. Добавлена, например, поддержка асимметричного шифрования. А еще — эмуляция зонированных устройств. В virtio‑mem добавлена поддержка горячего отключения устройств и миграции в режиме «x‑ignore‑shared». Добавлено новое устройство vhost‑user для VIRTIO SCMI.

В эмуляторах архитектур ARM, PowerPC и RISC‑V реализовано использование инструкций для ускорения шифрования AES, предоставляемых процессором хост‑системы.

Появился мультитач, речь идет, конечно, о графическом интерфейсе.

В эмуляторе x86 появилась поддержка процессоров Intel Xeon на базе микроархитектуры Granite Rapids. По умолчанию задействованы структуры в формате SMBIOS 3.0.

Для архитектуры ARM добавлена поддержка относительно новой платы Banana Pi BPI‑M2 Ultra (bpim2u) и CPU Cortex Neoverse‑V1 (neoverse‑v1). Добавлена поддержка процессорных расширений FEAT_PAN3 (SCTLR_ELx.EPAN), FEAT_LSE2 (Large System Extensions v2) и FEAT_RME (Realm Management Extensions).

Для эмуляторов архитектур ARM, PowerPC и RISC‑V реализовано использование инструкций для ускорения шифрования AES, предоставляемых процессором хост‑системы.

В эмуляторе архитектуры RISC‑V добавлена поддержка CPU Veyron V1, а также наборов процессорных инструкций (ISA) BF16 (Zfbfmin/Zvfbfmin/Zvfbfwma) и Zfa. Реализована возможность дизассемблирования инструкций Zcm*, Z*inx,XVentanaCondOps и Xthead. Улучшена поддержка гипервизора KVM.

В эмуляторе архитектуры MIPS реализована поддержка процессоров Ingenic XBurstR1 и XBurstR2, а также процессорных инструкций MXU.

В классическом генераторе кода TCG для архитектуры PowerPC добавлена поддержка SMT (Simultaneous multithreading), позволяющая на системах pseries и powernv выполнять до 8 потоков на каждом процессорном ядре.

В эмуляторе архитектуры PowerPC добавлена поддержка эмуляции модели CPU Power9 DD2.2, а также реализована возможность профилирования CPU POWER.

Для эмулятора процессоров Qualcomm Hexagon добавлена поддержка инструкций v68/v73 scalar и v68/v69 HVX. Для HVX реализована поддержка gdbstub для удалённой отладки в GDB.

Еще одно нововведение касается архитектуры s390. Здесь решены проблемы при эмуляции инструкций LDER, LCBB, LOCFHR, MXDB, MXDBR, EPSW, MDEB, MDEBR, MVCRL, LRA, CKSM, CLM, ICM, MC, STIDP, EXECUTE и CLGEBR(A).

Что касается эмулятора Tricore, то здесь добавлена поддержка процессоров TC37x, использующих версию 1.6.2 набора процессорных инструкций. Добавлена поддержка эмуляции инструкций POPCNT.W, LHA, CRC32L.W, CRC32.B, SHUFFLE, SYSCALL и DISABLE.

Наконец, для шины PCIe предложены новые команды QMP (QEMU Machine Protocol) для подстановки событий, связанных с CXL (Compute Express Link), DRAM и модулями памяти.

Tags:
Hubs:
Total votes 9: ↑8 and ↓1+8
Comments3

Articles