Megjelent a QEMU 6.2 projekt kiadása. Mint emulátor, a QEMU lehetővé teszi, hogy egy, egy teljesen eltérő architektúrával rendelkező rendszeren futtassunk olyan programot, amelyet egy adott hardver platformhoz készítettek, például ARM alkalmazásokat futtassunk x86 kompatibilis PC-n. A virtualizációs módban a QEMU kód végrehajtási teljesítménye az elszigetelt környezetben közel áll a hardveres rendszerhez, a CPU utasítások közvetlen végrehajtása és a Xen hypervisor vagy a KVM modul igénybevételével.
A projekt eredetileg Fabrice Bellard által jött létre, azzal a céllal, hogy lehetővé tegye az x86 platformra készült Linux futtatható állományok indítását más architektúrákon. A fejlesztés évek alatt kiterjesztette a támogatást 14 hardver architektúra teljes emulációjára, és a támogatott emulált hardver eszközök száma meghaladta a 400-at. A 6.2 verzió előkészítése során több mint 2300 változtatást hajtottak végre 189 fejlesztőtől.
A QEMU 6.2-be bevezetett kulcsfontosságú fejlesztések:
- A virtio-mem mechanizmusba, amely lehetővé teszi a memória forró csatlakozását és leválasztását, a virtuális gépekhez, teljes körű támogatást kaptak a vendég rendszerek memória dump-jai, a környezet migrálása előtti és utáni adatmásolási műveletek (pre-copy/post-copy) és a vendég rendszer háttérben történő pillanatkép-készítése.
- A QMP (QEMU Machine Protocol) megvalósította a DEVICE_UNPLUG_GUEST_ERROR hibakezelését, amely a vendég rendszeren fordul elő hibák esetén a hardver forró csatlakozási műveletek végrehajtása során.
- Kiterjesztették a klasszikus TCG (Tiny Code Generator) kódgenerátorhoz kapcsolódó pluginok által feldolgozott betöltési argumentszintaxisát. A "cache" pluginba hozzáadták a többmagos rendszerek támogatását.
- Az x86 architektúra emulátorában megvalósították az Intel Snowridge-v4 CPU modell támogatását. Bevezették az Intel SGX (Software Guard eXtensions) enclávékhoz való hozzáférést a vendég rendszerekből, a /dev/sgx_vepc eszköz használatával a gazda rendszer oldalán, és a "memory-backend-epc" backendet a QEMU-ban. A Secure Encrypted Virtualization (AMD SEV) technológiával védett vendég rendszerek esetében lehetőséget adtak a verifikálható közvetlen (betöltő használata nélkül) kernel indítására (aktiválva a 'kernel-hashes=on' paramétert a 'sev-guest'-ben).
- Az ARM emulátorban, Apple Silicon chippekkel rendelkező host rendszereken aktiválva lett a "hvf" hardveres gyorsító mechanizmus, amely lehetővé teszi a AArch64 architektúrával rendelkező vendég rendszerek futtatását. Támogatást nyert a Fujitsu A64FX processzormodellek emulációja. Bevezetésre került egy új emulált géptípus, a "kudo-mbc". A 'virt' gépekhez hozzáadódott az ITS (Interrupt Translation Service) emulációinak támogatása és a több mint 123 CPU használatának lehetősége emulációs módban. Az "xlnx-zcu102" és "xlnx-versal-virt" emulált gépekhez BBRAM és eFUSE eszközök támogatása került hozzáadásra. A Cortex-M55 chipre épülő rendszerekhez a MVE processzor kiterjesztések mobil profiljának támogatása áll rendelkezésre.
- A PowerPC architektúrájú emulátorban megérkezett a POWER10 DD2.0 CPU modellek kezdeti támogatása. Az 'powernv' emulált gépekhez javították a POWER10 architektúra támogatását, míg a 'pseries' gépekhez FORM2 PAPR NUMA leírásokat adtak hozzá.
- A RISC-V architektúrájú emulátorban támogatást nyert a Zb[abcs] utasítássorozat kiterjesztése. Az összes emulált gép esetében engedélyezték a "host-user" és "numa mem" opciók használatát. Támogatást kaptak a SiFive PWM (Pulse-width modulator) beállítások is.
- A 68k architektúrájú emulátorban javították az Apple által javasolt NuBus busz támogatását, beleértve a ROM képek betöltésének lehetőségét és a megszakítási slotok támogatását.
- A qemu-nbd blokk eszközben alapértelmezetten aktiválva van az írási műveletek gyorsítótárazási módja ("writeback" a "writethrough" helyett) a qemu-img viselkedésének megfelelően. Hozzáadásra került a "--selinux-label" opció, amely SELinux címkék beállítását teszi lehetővé Unix socketekhez.
Forrás: opennet.ru
