Izdaja emulatorja QEMU 5.0

Predložil izdaja projekta QEMU 5.0. Kot emulator vam QEMU omogoča zagon programa, prevedenega za eno platformo strojne opreme, v sistemu s popolnoma drugačno arhitekturo, na primer zagon aplikacije ARM na računalniku, združljivem z x86. V virtualizacijskem načinu v QEMU je zmogljivost izvajanja kode v izoliranem okolju blizu izvornega sistema zaradi neposrednega izvajanja navodil na CPE in uporabe hipervizorja Xen ali modula KVM.

Projekt je prvotno ustvaril Fabrice Bellard, da bi izvedljivim datotekam Linuxa, zgrajenim za platformo x86, omogočil izvajanje v arhitekturah, ki niso x86. V letih razvoja je bila dodana popolna podpora za emulacijo za 14 arhitektur strojne opreme, število emuliranih naprav strojne opreme je preseglo 400. V pripravah na različico 5.0 je bilo narejenih več kot 2800 sprememb s strani 232 razvijalcev.

Ključ izboljšavedodano v QEMU 5.0:

  • Možnost posredovanja dela datotečnega sistema gostiteljskega okolja gostujočemu sistemu z uporabo virtiofsd. Gostujoči sistem lahko namesti imenik, označen za izvoz na strani gostiteljskega sistema, kar močno poenostavi organizacijo skupnega dostopa do imenikov v virtualizacijskih sistemih. Za razliko od uporabe omrežnih datotečnih sistemov, kot sta NFS in virtio-9P, virtiofs omogoča doseganje zmogljivosti blizu lokalnega datotečnega sistema;
  • Podpora migracija podatkov v živo iz zunanjih procesov z uporabo QEMU D-Bus;
  • Uporabnost zaledja pomnilnika zagotoviti delovanje glavnega RAM-a gostujočega sistema. Zaledje je določeno z možnostjo »-strojni pomnilnik-zaledje«;
  • Nov "stisni" filter, ki ga lahko uporabite za ustvarjanje varnostnih kopij stisnjenih slik;
  • Ukaz »qemu-img measure« lahko zdaj deluje s slikami LUKS, možnost »--target-is-zero« pa je bila dodana ukazu »qemu-img convert«, da preskoči ničelno nastavljanje ciljne slike;
  • Dodana eksperimentalna podpora za proces qemu-storage-daemon, ki omogoča dostop do ravni blokov QEMU in ukazov QMP, vključno z zagonom blokovnih naprav in vgrajenim strežnikom NBD, ne da bi bilo treba zagnati celoten virtualni stroj;
  • Emulator arhitekture ARM je dodal zmožnost posnemanja procesorjev Cortex-M7 in zagotavlja podporo za PC plošče tacoma-bmc, Netduino Plus 2 in Orangepi. Dodana podpora za naprave vTPM in virtio-iommu v emulirane stroje »virt«. Možnost uporabe gostiteljskih sistemov AArch32 za zagon gostujočih okolij KVM je bila opuščena. Izvedena je bila podpora za emulacijo naslednjih funkcij arhitekture:
    • ARMv8.1: HEV, VMID16, PAN, PMU
    • ARMv8.2: UAO, DCPoP, ATS1E1, TTCNP
    • ARMv8.3: RCPC, CCIDX
    • ARMv8.4: PMU, RCPC
  • Dodana podpora za grafično konzolo emulatorju arhitekture HPPA z uporabo grafične naprave HP Artist;
  • Dodana podpora za navodilo GINVT (Global Invalidation TLB) za emulator arhitekture MIPS;
  • Emulacija orodij za pospeševanje strojne opreme KVM za izvajanje gostujočih sistemov je bila dodana emulatorju arhitekture PowerPC za stroje 'powernv'
    KVM s klasičnim generatorjem kod TCG (Tiny Code Generator). Za posnemanje trajnega pomnilnika je bila dodana podpora za module NVDIMM, ki se odražajo v datoteki. Za stroje 'serije' je bila odstranjena potreba po ponovnem zagonu za uskladitev delovanja krmilnikov prekinitev XIVE/XICS v načinu “ic-mode=dual”;

  • Emulator arhitekture RISC-V za plošči 'virt' in 'sifive_u' zagotavlja podporo za standardne gonilnike sistema Linux za upravljanje napajanja in ponovnega zagona. Podpora RTC za Goldfish je bila dodana za ploščo 'virt'. Dodana poskusna implementacija razširitev hipervizorja;
  • Podpora za AIS (Adapter Interrupt Suppression) je bila dodana emulatorju arhitekture s390, ko deluje v načinu KVM.

Vir: opennet.ru

Dodaj komentar