Bemutatásra került a QEMU 10.0.0 projekt kiadása. Mint emulátor, a QEMU lehetővé teszi olyan programok futtatását, amelyeket egyetlen hardverplatformra állítottak össze egy teljesen más architektúrájú rendszeren, például ARM alkalmazás futtatását x86 kompatibilis PC-n. A QEMU virtualizációs üzemmódban a kód végrehajtásának teljesítménye az elkülönített környezetben közel áll a hardveres rendszer teljesítményéhez, mivel közvetlenül hajtja végre az utasításokat a CPU-n, és használja a Xen hypervisort vagy a KVM modult Linux alatt, vagy a NVMM modult NetBSD-n.
A projektet eredetileg Fabrice Bellard indította el azzal a céllal, hogy lehetővé tegye az x86 architektúrára készült Linux futtatható fájlok futtatását más architektúrákon. A fejlesztés során a teljes emuláció támogatása 14 hardverarchitektúrára bővült, és az emulált hardvereszközök száma meghaladta a 400-at. A 10.0 verzió előkészítése során több mint 2800 módosítást hajtottak végre 211 fejlesztő által.
A QEMU 10.0-ban hozzáadott kulcsfontosságú fejlesztések:
- A virtio-scsi meghajtóba, amely egy virtuális SCSI-vezérlőt (SCSI Host Bus Adapter) biztosít, virtuális gépekheztámogatást kapott a multiqueue rendszerekhez, lehetővé téve a sorok megosztását különböző blokkeszközök között a több szálas hozzáférés biztosítása érdekében többmagos rendszereken (a különböző sorokat egyetlen tárolón különböző I/O szálak kezelhetik). A virtuális SCSI-vezérlő teljesítménye kicsit elmarad a virtuális blokkeszköz (virtio-blk) meghajtótól, de több mint 28 lemez használatát teszi lehetővé.
- A VFIO (Virtual Function I/O) terén javult az IGD (Integrated Graphics Device) átjárhatóságának támogatása az integrált GPU-khoz, amelyeket az Intel 11. (Rocket Lake) és 12. (Alder Lake) generációs processzorai használnak. Támogatja az ATI régi GPU-jait (x550). Alapvető PCI PM (Power Management) támogatás került bevezetésre.
- Jelentősen át lett dolgozva és kibővítve a QMP (QEMU Machine Protocol) dokumentációja, amely lehetővé teszi az alkalmazások számára a QEMU irányítását.
- Új Live-migrációs mód került hozzáadásra „cpr-transfer” (CheckPoint and Restart), amely lehetővé teszi a vendég rendszer új QEMU példányra történő áthelyezését, amely ugyanazon a hoszton fut. Ez a mód minimalizálja a szünetelési időt, mivel a vendég rendszer memóriája a virtuális címterébe van tükrözve, új QEMU példány létrehozása nélkül.
- Hozzáadva az ‘apple-gfx-pci’ és ‘apple-gfx-mmio’ grafikus eszközök, amelyek a ParavirtualizedGraphics keretrendszert használják, amelyet a macOS biztosít a grafika hardveres gyorsításához vendég rendszerekben. Az első meghajtó x86-64 eszközök használatára készült, míg a második ARM64-re.
- Az x86 architektúrájú emulátorban támogatóvá vált az Intel Xeon Clearwater Forest és Sierra Forest v2 processzormodell. Felgyorsult a karakterláncmanipulációs utasítások emulációja.
- Az ARM architektúrájú emulátorban támogatásra került az NPCM8445 Evaluation és i.MX 8M Plus EVK platformok. Hozzáadva az FEAT_AFP, FEAT_RPRES és FEAT_XS kiterjesztések emulálása, valamint a fizikai és virtuális EL2 időzítők. A CPU Arm PXA2xx támogatása elavultnak nyilvánítva, valamint az iwMMXt utasítások emulációja.
- A RISC-V architektúrájú emulátorban emulálásra került a Microblaze V platform, az Ascalon CPU és az RV64 Xiangshan Nanhu CPU. Támogatás került hozzáadásra az ‘svukte’, ‘ssstateen’, ‘smrnmi’, ‘smdbltrp’/’ssdbltrp’, ‘supm’, ‘sspm’ architekturális utasításkészlet kiterjesztéseihez, valamint az IOMMU címkék és a riscv-iommu-sys eszközök.
- A HPPA architektúrájú emulátorban emulálásra került a Diva GSP BMC platform. A SeaBIOS-hppa firmware 18. verziójára frissítve. A fordítási sebesség növelve. A virtuális CPU visszaállítási kódja javítva. 64 bites rendszereken emulálásra került akár 256 GB memória méretű konfigurációk.
- A LoongArch architektúrájú emulátorban lehetőség nyílt a CPU forró csatlakoztatására. Megvalósításra került a paravirtuálisított IPI (inter-processzor megszakítás). Biztosítva lett az erőforrások várakozási idejének nyomkövetése a hipervizortól. KVMHozzáadva a virtuális külső megszakítások (extioi) kezelésének támogatása.
- A s390x architektúrájú emulátorban hozzáadva a 17. generációs mainframe CPU-k támogatása és a virtio-mem megvalósítása. A teljesítmény növelése érdekében lehetőség van a PCI-eszközökkel való közvetlen kapcsolatra, kikerülve az IOMMU-t.
Forrás: opennet.ru
