QEMU 4.2 emulaatori väljalaskmine

Tutvustatakse projekti vabastamine QEMU 4.2. Emulaatorina võimaldab QEMU ühe riistvaraplatvormi jaoks koostatud programmi käivitada hoopis teistsuguse arhitektuuriga süsteemis, näiteks käivitada ARM rakendus x86-ühilduval arvutil. Virtualiseerimisrežiimis QEMU-s on koodi täitmine isoleeritud keskkonnas omasüsteemile lähedane tänu käskude otsesele täitmisele protsessoris ja Xeni hüpervisori või KVM-mooduli kasutamisele.

Projekti lõi algselt Fabrice Bellard, et võimaldada x86 platvormile loodud Linuxi käivitatavatel failidel töötada mitte-x86 arhitektuuridel. Aastate jooksul on arendustegevusega lisandunud täielik emulatsioonitugi 14 riistvaraarhitektuurile, emuleeritud riistvaraseadmete arv on ületanud 400. Versiooni 4.2 ettevalmistamisel on tehtud üle 2200 muudatuse 198 arendajalt.

Võti täiustusedQEMU 4.2-s lisatud:

  • Klassikaline TCG (Tiny Code Generator) koodigeneraator toetab protsessori käskude ja mäluaadresside jälgimise pluginaid;
  • Seadme draiveri blokeerimisel NBD (Network Block Device) võimaldab tõhusamalt töödelda lugemisel kopeerimise taotlusi. NBD serveri kood on optimeeritud hõredate piltide (tühjadega) kopeerimiseks. NBD kliendi ja serveri juurutamist on üldiselt täiustatud;
  • LUKS-i ketta krüptimise täiustatud jõudlus, kasutades AES-XTS algoritmi;
  • vfio-pci lisas toe atribuudile "failover_pair_id", et lihtsustada VFIO-seadmete migratsiooni;
  • virtio-mmio lisab toe virtio-ühilduvale 2 standardile ja pakendatud virtuaalse järjekorra mehhanismile, mis on määratletud virtio 1.1 spetsifikatsioonis (virtuaalne järjekord) vahetada andmeid virtuaalse I/O seadmega partiirežiimis;
  • x86 emulaatorisse on lisatud uut tüüpi emuleeritud masin "microvm", mis kasutab jõudluse optimeerimiseks PCI asemel virtio-mmio-d. Rakendatud on võimalus lubada ja keelata VMX, kasutades lippe “-cpu”. Lisatud tugi laienduste AVX512 BFloat16 emuleerimiseks. Tugi on uutele protsessorimudelitele Denverton (Atomil põhinev server SoC), Snowridge ja Dhyana. Stabiliseeritud tugi macOS Hypervisor Frameworkile ("-accel hvf");
  • ARM-i arhitektuuri emulaator on lisanud toe Aspeed AST2600 SoC (“ast2600-evb”) emuleerimiseks. Lisatud on Semihosting 2.0 tehnoloogia tugi koos STDOUT_STDERR/EXIT_EXTENDED laiendustega, mis võimaldab emuleeritud seadmel kasutada hosti poolel failide loomiseks stdout, stderr ja stdin. KVM on lisanud võimaluse kasutada rohkem kui 256 protsessorit ja toetab SVE SIMD juhiseid. Virtuaalsetes masinates tüübiga "voorus» on rakendatud mälu kuuma ühendamise tugi. TCG koodigeneraatori abil täiustatud emulatsiooni jõudlus.
  • PowerPC arhitektuuri emulaatoril on nüüd võimalus emuleerida POWER9 juhiseid mffsce, mffscrn ja mffscrni. Emuleeritud "powernv" masinad lisavad Homeri ja OCC SRAM-süsteemi seadmete toe;
  • RISC-V arhitektuuri emulaatorisse on lisatud valik “-initrd” ja võimalus vaadata siluris arhitektuuri täielikku olekut;
  • S390 arhitektuuri emulaator toetab IEP (käskude täitmise kaitse) juhiseid;
  • 68k arhitektuuri emulaator on lisanud esialgse võimaluse Macintosh Quadro 800 ja klassikaliste NeXTcube süsteemide emuleerimiseks;
  • Xtensa arhitektuuri emulaator on lisanud uut tüüpi emuleeritud masina "virt" ja rakendanud kasutajaruumi emuleerimiseks ABI call0 toe.

Allikas: opennet.ru

Lisa kommentaar