QEMU 5.0 emulaatori väljalaskmine

Tutvustatakse projekti vabastamine QEMU 5.0. 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 5.0 ettevalmistamisel on tehtud üle 2800 muudatuse 232 arendajalt.

Võti täiustusedQEMU 5.0-s lisatud:

  • Võimalus edastada osa hostikeskkonna failisüsteemist külalissüsteemi kasutades virtiofsd. Külalissüsteem saab ühendada hostisüsteemi poolele ekspordiks märgitud kataloogi, mis lihtsustab oluliselt virtualiseerimissüsteemide kataloogidele jagatud juurdepääsu korraldamist. Erinevalt võrgufailisüsteemide (nt NFS ja virtio-9P) kasutamisest võimaldab virtiofs saavutada jõudlust kohaliku failisüsteemi lähedal;
  • Toetama andmete reaalajas migratsioon välistest protsessidest QEMU D-Busi abil;
  • Kasutatavus mälu taustaprogrammid külalissüsteemi peamise RAM-i töö tagamiseks. Taustaprogramm määratakse suvandi "-masina mälu-taustaprogramm" abil;
  • Uus "tihendamise" filter, mille abil saab koostada tihendatud pildivarukoopiaid;
  • Käsk "qemu-img meede" saab nüüd töötada LUKS-i piltidega ja käsule "qemu-img convert" on lisatud suvand "--target-is-zero", mis jätab sihtpildi nullimise vahele;
  • Lisatud eksperimentaalne tugi qemu-storage-deemoni protsessile, pakkudes juurdepääsu QEMU plokitasemele ja QMP-käskudele, sealhulgas plokiseadmete ja sisseehitatud NBD-serveri käivitamisele, ilma et peaksite käivitama täielikku virtuaalset masinat;
  • ARM-i arhitektuuri emulaator on lisanud võimaluse emuleerida Cortex-M7 protsessoreid ja toetab tacoma-bmc, Netduino Plus 2 ja Orangepi PC-plaate. Virt-emuleeritud masinatele on lisatud vTPM-i ja virtio-iommu seadmete tugi. Võimalus kasutada AArch32 hostsüsteeme KVM-i külaliskeskkondade käitamiseks on aegunud. Rakendatud on järgmiste arhitektuurifunktsioonide emuleerimise tugi:
    • ARMv8.1: HEV, VMID16, PAN, PMU
    • ARMv8.2: UAO, DCPoP, ATS1E1, TTCNP
    • ARMv8.3: RCPC, CCIDX
    • ARMv8.4: PMU, RCPC
  • Lisatud graafikakonsooli tugi HPPA arhitektuuri emulaatorile, kasutades graafikaseadet HP Artist;
  • MIPS-i arhitektuuri emulaatorile on lisatud GINVT (Global Invalidation TLB) käsu tugi;
  • Powernv-masinate PowerPC arhitektuuri emulaatorisse on lisatud KVM-i riistvarakiirendustööriistade emuleerimine külalissüsteemide käitamiseks
    KVM klassikalise TCG koodigeneraatoriga (Tiny Code Generator). Püsimälu emuleerimiseks on lisatud failis kajastatud NVDIMM-ide tugi. „Pseries” masinate puhul on eemaldatud taaskäivitamise vajadus, et koordineerida XIVE/XICS katkestuskontrollerite tööd režiimis „ic-mode=dual”;

  • RISC-V arhitektuuri emulaator "virt" ja "sifive_u" plaatide jaoks toetab standardseid Linuxi sysconi draivereid toite ja taaskäivituse haldamiseks. "Virt" tahvlile on lisatud Goldfish RTC tugi. Lisatud hüperviisori laienduste eksperimentaalne juurutamine;
  • KVM-režiimis töötamisel on s390 arhitektuuriemulaatorile lisatud AIS (Adapter Interrupt Suppression) tugi.

Allikas: opennet.ru

Lisa kommentaar