Esitati QEMU 9.2. versiooni väljalaskmist. QEMU emulaatorina võimaldab käivitada programmi, mis on loodud ühe riistvaraplatvormi jaoks, täiesti erineva arhitektuuriga süsteemis, näiteks käivitada ARM-i rakenduse x86 ühilduval PC-l. Virtuaalrežiimis on QEMU koodi käitamise jõudlus isoleeritud keskkonnas lähedane riistvarasüsteemi omale, tänu otsekäivitamisele CPU-l ning Xen hüperviisori või KVM mooduli kasutamisele Linuxis või NVMM mooduli kasutamisele NetBSD-s.
Projekt loodi algselt Fabrice Bellardi poolt, et võimaldada Linuxi käivitatavate failide, mis on loodud x86 platvormidele, käivitamist arhitektuuridel, mis erinevad x86-st. Aastate jooksul on arendatud täiendavat toetust täielikuks emulatsiooniks 14 riistvaraarhitektuuril, emuleeritud seadmete arv on ületanud 400. QEMU 9.2 versiooni ettevalmistamisel tehti rohkem kui 1700 muudatust 209 arendajalt.
QEMU 9.2-s lisatud peamised täiustused:
- Lisatud katsejärgus toetus seadmemudelite loomiseks Rust keeles. Kui QEMU on kokkupanekuks Rusti toega, rakendatakse vaikimisi alternatiivset rakendust PL011 UART draiverist, mis on kirjutatud Rustis, kuid praegu ei soovitata laiutatuks.
Praegu on QEMU-s vaikimisi Rusti toetus välja lülitatud ja aktiveeritakse, kui selle kokkupanemisel kasutatakse "—enable-rust" konfiguratsiooniskripti käivitamiseks. Rustiga kokkupanekuks on vajalik vähemalt rustc versioon 1.63.0 ja bindgen versioon 0.60.0 (näiteks Debian 12-s peab uue versiooni Rust eraldi installima). Tulevikus plaanitakse Rusti kompilaatori ja bindgeni siduja lisamist kohustuslike kokkupanekute sõltuvuste hulka.
Rust-i edendamise plaanide seas QEMU-s on lisada tööks valmis HPET (High Precision Event Timer) draiver ja bloki seadmete draiver, mis on kirjutatud Rustis, jätkuv Rusti kasutamise saduldamise arendamine erinevates QEMU komponentides (nt bloki seadmete draiverites, ajastites ja GPIO-s), ning Rusti ümberkirjutamine kriitiliste süsteemide jaoks, nagu virtio.
- VirtIO-GPU seadmesse, mis tagab virtuaalse GPU töö, on lisatud 3D-kiirenduse tugi Vulkan graafikarakenduste liidese abil, mille realiseerimine toimub Mesa Vulkan draiveri Venus kaudu. See võimaldab anda külalisoperatsioonisüsteemile virtuaalse GPU 3D-renderdamiseks, ilma et oleks vajalik otsene eksklusiivne juurdepääs füüsilisele GPU-le. Nõutav on, et host-süsteemi poolel oleks olemas virglrenderer teek ja külalisoperatsioonisüsteemi poolel Venus Mesa draiver. Vulkan toetuse seadistamise juhend on saadaval.
- Külaliste migreerimise tööriistakomplekti on lisatud toetus andmevoogude samal ajal toimuva tihendamise operatsioonide kiirendamiseks, kasutades Intel protsessorites integreeritud QAT (QuickAssist Technology) kiirendajat, mida toetab QATzip teek, mis pakub vahendeid tihendamise ja krüpteerimisega seotud arvutuste kiirendamiseks.
- GLib-põhises krüptograafilises tagasisides on lisatud SHA-384 räsi algoritmi tugi.
- ARM arhitektuuri emulaatorisse on lisatud toetus protsessorilaienditele FEAT_EBF16 ja FEAT_CMOW, samuti turvalisuse tagamiseks mõeldud laiendid, mida kasutatakse xilinx-zynq-a9 plaatidel. HVF komponent, mis kasutab Hypervisor.framework tööriistakomplekti külalisoperatsioonisüsteemide täitmise kiirendamiseks ARM-i Mac-computers, toetab rohkem kui 64 GB mälu. Emuleeritud süsteemide sbsa-ref ja virt jaoks on lisatud kahekordse aadressi tõlke tugi SMMU (System Memory Management Unit) jaoks. Vananenud emuleeritud seadmete tüübid akita, borzoi, cheetah, connex, mainstone, n800, n810, spitz, terrier, tosa, verdex ja z2 ei ole enam toetatud.
- x86 arhitektuuri emulaatorisse on lisatud uus tüüpi riistvara konfiguratsioon — nitro-enclave, mis emuleerib AWS Nitro Enclave keskkonda ja suudab laadida süsteemipilte Enclave Image Formatis.
- x86 arhitektuuri emulaatoris hypervisorile KVM on ellu viidud AVX10 käsu kogu ja selle spetsiifiliste versioonide AVX10 — avx10-128, avx10-256 ja avx10-512 toe aktiveerimise võimalus.
- RISC-V arhitektuuri emulaatorisse on lisatud toetus käskude laiendustele Svvptc, Bitmanip (bitimanipuleerimine) ja CFI (kontrollvoo terviklikkus), mida kasutatakse OpenTitan plaatidel. Emuleeritud süsteemi tüüp 'virt' on saanud IOMMU toe. Parandatud on ld ja st käskude jõudlust.
- HPPA arhitektuuri emulaatoris on SeaBIOS-hppa püsivara uuendatud versioonile 17.
- S390x arhitektuuri emulatorisse on lisatud võimalus käivituda teistelt seadmetelt, kui määratud seadmest käivitamine ebaõnnestub.
Allikas: opennet.ru
