QEMU 4.1 emulaatori väljalaskmine

Tutvustatakse projekti vabastamine QEMU 4.1. 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.1 ettevalmistamisel on tehtud üle 2000 muudatuse 276 arendajalt.

Võti täiustusedQEMU 4.1-s lisatud:

  • X86 arhitektuuri emulaatorile on lisatud Hygon Dhyana ja Intel SnowRidge CPU mudelite tugi. Lisatud RDRAND laienduse emuleerimine (riistvaraline pseudojuhuslike numbrite generaator). Lisatud lipud
    md-clear ja mds-no rünnakukaitse juhtimiseks MDS (Mikroarhitektuurne andmete proovivõtt) Inteli protsessoritel. Lisati võimalus määrata integraallülituste topoloogiad lipu "-smp ...,dies=" abil. Kõigi x86 CPU mudelite jaoks on rakendatud versioonid;

  • SSH-ploki draiver on kasutusest eemaldatud libssh2 edasi libsh;
  • Virto-gpu draiver (projekti osana välja töötatud virtuaalne GPU Virgil) lisatud tugi 2D/3D renderdamistoimingute teisaldamiseks välisesse vhost-user protsessi (näiteks vhost-user-gpu);
  • ARM-i arhitektuuri emulaator on lisanud pseudojuhuslike numbrite genereerimiseks toe ARMv8.5-RNG laiendusele. Cortex-M perekonna kiipide jaoks on rakendatud FPU emulatsiooni tugi ja Cortex-R5F FPU emulatsiooniga seotud probleemid on lahendatud. Välja on pakutud uus süsteem ehitusvalikute määramiseks, mis on kujundatud Kconfigi stiilis. SoC Exynos4210 jaoks on lisatud PL330 DMA kontrollerite tugi;
  • MIPS-arhitektuuri emulaator on täiustanud MSA ASE käskude tuge suure baitide järjekorra kasutamisel ja viinud nulljuhtumitega jagamise käsitlemise võrdlusriistvaraga. MSA käskude emuleerimise jõudlust täisarvude arvutamiseks ja permutatsioonioperatsioonideks on suurendatud;
  • PowerPC arhitektuuri emulaator toetab nüüd edastamist NVIDIA V100/NVLink2 GPU-dele VFIO abil. Pseries'i jaoks on rakendatud XIVE katkestuskontrolleri emulatsiooni kiirendus ja lisatud on PCI-sildade kuuma ühendamise tugi. Vektorkäskude emuleerimist on optimeeritud (Altivec/VSX);
  • RISC-V arhitektuuri emulaatorisse on lisatud uus riistvaramudel - "spike". Lisatud ISA 1.11.0 tugi. Täiustatud on 32-bitist süsteemikõne ABI-d, täiustatud on kehtetute käskude käsitlemist ja täiustatud on sisseehitatud silurit. Seadmepuusse on lisatud CPU topoloogia tugi;
  • S390 arhitektuuri emulaator on lisanud toe kõigi vektorkäskude emuleerimiseks rühmast "Vector Facility" ja lisanud täiendavaid elemente gen15 süsteemide toetamiseks (sealhulgas lisatud tugi vfio-ap jaoks mõeldud AP Queue Interruption Facility tugi). Rakendatud BIOS-i tugi ECKD DASD-lt käivitamiseks, mis on seotud külalissüsteemiga vfio-ccw kaudu;
  • SPARC arhitektuuri emulaatoris sun4m süsteemide jaoks on OpenBIOS-i jaoks lipu "-vga none" kasutamisega seotud probleemid lahendatud;
  • Tensilica Xtensa perekonna protsessori emulaator sisaldab valikuid MPU (mälukaitseüksus) ja eksklusiivse juurdepääsu jaoks;
  • Käsklusele "qemu-img convert" on lisatud valik "--salvage", et keelata kujutise teisendusprotsessi kokkujooksmine I/O vigade korral (saab kasutada näiteks osaliselt kahjustatud qcow2 failide taastamiseks). Meeskonnas
    “qemu-img rebase” töötab siis, kui sisendfaili jaoks pole veel tugifaili loodud;

  • Lisati chardevi taustaprogrammi ("-semihosting-config enable=on,target=native" (võimaldab emuleeritud seadmel kasutada stdout, stderr ja stdin failide loomiseks hosti poolel) korraldatud väljundit ümber suunata. ,chardev=[ ID]");
  • VMDK plokidraiveris on lisatud seSparse'i alamvormingu tugi kirjutuskaitstud režiimis;
  • GPIO emulatsioonidraiveris on lisatud tugi SiFive GPIO kontrollerile.

Allikas: opennet.ru

Lisa kommentaar