Projekat QEMU 10.0.0 je objavljen. Kao emulator, QEMU vam omogućava pokretanje programa izgrađenog za jednu hardversku platformu na sistemu sa potpuno drugačijom arhitekturom, na primjer, pokretanje ARM aplikacije na x86 kompatibilnom računaru. U QEMU režimu virtualizacije, performanse izvršavanja koda u izolovanom okruženju su bliske performansama hardverskog sistema zbog direktnog izvršavanja instrukcija na CPU-u i upotrebe Xen hipervizora ili KVM modula u... Linux, ili NVMM modul u NetBSD-u.
Projekat je prvobitno kreirao Fabrice Bellard kako bi omogućio pokretanje izvršnih datoteka kompajliranih za x86 platformu. Linux na arhitekturama koje nisu x86. Tokom godina razvoja, podrška za potpunu emulaciju dodana je za 14 hardverskih arhitektura, a broj emuliranih hardverskih uređaja premašio je 400. U pripremi verzije 10.0 napravljeno je više od 2800 promjena od strane 211 programera.
Ključna poboljšanja dodana u QEMU 10.0:
- Drajver virtio-scsi pruža virtuelni SCSI kontroler (SCSI Host Bus Adapter) za virtuelne mašineDodana je podrška za višenivoski sistem čekanja u redovima (multiqueue), što omogućava odvajanje redova za različite blokovske uređaje kako bi se podržao višenitni pristup na višejezgrenim sistemima (različiti redovi za jedan disk mogu se obrađivati različitim I/O nitima). U poređenju sa drajverom virtuelnog blokovskog uređaja (virtio-blk), virtuelni SCSI kontroler je nešto sporiji u performansama, ali omogućava korištenje više od 28 diskova.
- VFIO (Virtual Function I/O) je poboljšao IGD (Integrated Graphics Device) prolaznu podršku za integrisane GPU koji se koriste u 11. (Rocket Lake) i 12. (Alder Lake) generaciji Intel procesora. Dodata podrška za starije ATI GPU (x550). Implementirana je osnovna podrška za PCI PM (Power Management).
- Dokumentacija za QEMU Machine Protocol (QMP), koji omogućava aplikacijama da kontrolišu QEMU, značajno je revidirana i proširena.
- Dodan je novi način migracije uživo "cpr-transfer" (CheckPoint i Restart), koji omogućava premještanje gostujućeg sistema na novu QEMU instancu koja radi na istom hostu. Režim minimizira vrijeme suspenzije mapiranjem memorije gostujućeg sistema u virtuelni adresni prostor novog QEMU-a bez kopiranja sadržaja.
- Dodani su grafički uređaji 'apple-gfx-pci' i 'apple-gfx-mmio' koji koriste okvir ParavirtualizedGraphics koji je dostupan u macOS Za hardverski ubrzanu grafiku u gostujućim sistemima. Prvi drajver je dizajniran za upotrebu na x86-64 uređajima, a drugi za ARM64.
- Emulator x86 arhitekture sada podržava modele procesora Intel Xeon Clearwater Forest i Sierra Forest v2. Ubrzana je emulacija instrukcija za manipulaciju nizovima podataka.
- Emulator ARM arhitekture sada podržava NPCM8445 Evaluation i i.MX 8M Plus EVK ploče. Dodata emulacija ekstenzija FEAT_AFP, FEAT_RPRES i FEAT_XS, kao i EL2 fizički i virtuelni tajmeri. Zastarjela podrška za Arm PXA2xx CPU i emulaciju iwMMXt instrukcija.
- Emulator RISC-V arhitekture implementira emulaciju Microblaze V ploča, Ascalon CPU-a i RV64 Xiangshan Nanhu CPU-a. Dodata podrška za ekstenzije arhitekture skupa komandi 'svukte', 'ssstateen', 'smrnmi', 'smdbltrp'/'ssdbltrp', 'supm', 'sspm', kao i IOMMU oznake za prevođenje i riscv-iommu-sys uređaje.
- HPPA arhitektura emulator pruža emulaciju Diva GSP BMC ploča. SeaBIOS-hppa firmver je ažuriran na verziju 18. Povećana brzina emitiranja. Poboljšan kod za resetovanje virtuelnog CPU-a. Na 64-bitnim sistemima omogućena je emulacija konfiguracija sa veličinama memorije do 256 GB.
- Emulator LoongArch arhitekture sada podržava hot-plugging CPU-a. Implementiran je paravirtualizirani IPI (inter-procesorski prekid). Implementirano je praćenje timeouta alokacije resursa hipervizora. KVMDodata je podrška za virtuelno rutiranje eksternih prekida (extioi).
- Emulator s390x arhitekture dodaje podršku za 17. generaciju mainframe CPU-a i implementira virtio-mem podršku. Da bi se poboljšale performanse, dodana je mogućnost interakcije sa PCI uređajima zaobilazeći IOMMU.
izvor: opennet.ru
