QEMU 6.2 projekti väljaanne on esitatud. QEMU emulaatorina võimaldab see käivitada programmi, mis on loodud ühele riistvaraplatvormile, täiesti erineva arhitektuuriga süsteemis, näiteks saab käivitada ARM-ile mõeldud rakenduse x86 ühilduval PC-l. Virtualiseerimisrežiimis on QEMU-s koodide täitmise jõudlus isoleeritud keskkonnas sarnane riistvarasüsteemiga, tänu otsetäitmisele CPU-l ja Xen hüpervisiitori või KVM mooduli kaasamisele.
Algselt töötas projekti välja Fabrice Bellard, et võimaldada x86 platvormile kompileeritud Linuxi käitatavate failide käivitamist arhitektuuridel, mis erinevad x86-st. Aastaid arendustööd on lisatud täieliku emulatsiooni tugi 14 riistvaraarhitektuuri jaoks, emuleeritud riistvaraseadmete arv on ületanud 400. Versiooni 6.2 ettevalmistamise käigus tehti üle 2300 muudatuse 189 arendajalt.
QEMU 6.2 juurde lisatud peamised täiustused:
- virtio-mem mehhanismi, mis võimaldab kuuma mälu ühendamist ja eemaldamist virtuaalmasinatesse, lisatud täielik tugi külaliste süsteemide mälu dump'ide, keskkonna esmase ja järgneva kopeerimise (pre-copy/post-copy) ning külalissüsteemi taustsüsteemide loomise snapshot'ide jaoks.
- QMP-s (QEMU masina protokoll) on rakendatud DEVICE_UNPLUG_GUEST_ERROR veahaldust, mis tekib külalissüsteemi poolel seadmete kuumplugimise toimingute tõrgete korral.
- Laadimisargumendide süntaks on laiendatud, mida töödeldakse klassikalise TCG (Tiny Code Generator) koodi genereerimise pistikprogrammides. Pistikprogrammi «cache» on lisatud tugi mitme südamiku süsteemidele.
- x86 arhitektuuri emulaatoris on rakendatud Intel Snowridge-v4 CPU mudeli tugi. Lisatud on tugi Intel SGX (Software Guard eXtensions) enclave-dele pääsemiseks külalissüsteemidest, kasutades seadmeid /dev/sgx_vepc host-süsteemi küljel ja backend'i «memory-backend-epc» QEMU-s. Külalissüsteemidele, mida kaitstakse AMD SEV (Secure Encrypted Virtualization) tehnoloogia abil, on lisatud võimalus veenduda, et tuum käivitatakse otse (ilma laadija kasutamiseta) (see võimaldatakse seadistades parameetri ‘kernel-hashes=on’ ‘sev-guest’).
- Apple Siliconi kiipidega host-süsteemide ARM-emulaatoris on rakendatud riistvara kiirenduse mehhanismi "hvf" tugi AArch64 arhitektuuri põhiste külalisüsteemide käivitamiseks. Lisatud on Fujitsu A64FX protsessorite mudelite emuleerimise tugi. Rakendatud on uus emuleeritud masinate tüüp "kudo-mbc". Virtuaalmasinatele on lisatud Interrupt Translation Service (ITS) emuleerimise tugi ja tugi üle 123 CPU kasutamiseks emuleerimise režiimis. Emuleeritud masinatele "xlnx-zcu102" ja "xlnx-versal-virt" on lisatud BBRAM- ja eFUSE-seadmete tugi. Cortex-M55 kiipide põhjal töötavatele süsteemidele on tagatud mobiiliprofiili protsessori laienduste MVE tugi.
- PowerPC arhitektuuri emulaatorisse on lisatud algne tugi CPU mudelile POWER10 DD2.0. Emuleeritud masinatele "powernv" on parendatud POWER10 arhitektuuri tuge, ning masinatele "pseries" on lisatud FORM2 PAPR NUMA kirjeldused.
- RISC-V arhitektuuri emulaatorisse on lisatud Zb[abcs] käskude kogumi laienduste tugi. Kõikidele emuleeritud masinatele on lubatud "host-user" ja "numa mem" valikute kasutamine. Lisatud on SiFive PWM (Pulse-width modulator) tugi.
- 68k arhidekti emulaatoris on parandatud Apple'i soovitatud NuBus bussi tugi, sealhulgas ROM-piltide laadimise võimalus ja katkestuspesade toetus.
- qemu-nbd plokiseadmises on vaikimisi lubatud kirjutamise operaatsioonide vahemälu režiim ("writeback" asemel "writethrough"), et vastata qemu-img käitumisele. Lisatud on võimalus "—selinux-label", et määrata SELinuxi sildid Unix-socketitele.
Allikas: opennet.ru
