Vydání emulátoru QEMU 4.1

Předložené vydání projektu QEMU 4.1. Jako emulátor vám QEMU umožňuje spouštět program zkompilovaný pro jednu hardwarovou platformu na systému se zcela odlišnou architekturou, například spouštět aplikaci ARM na počítači kompatibilním s x86. V režimu virtualizace v QEMU se výkon provádění kódu v izolovaném prostředí blíží nativnímu systému díky přímému provádění instrukcí na CPU a použití hypervizoru Xen nebo KVM modulu.

Projekt původně vytvořil Fabrice Bellard, aby umožnil spustitelné soubory Linuxu vytvořené pro platformu x86 na architekturách jiných než x86. V průběhu let vývoje byla přidána plná podpora emulace pro 14 hardwarových architektur, počet emulovaných hardwarových zařízení přesáhl 400. V rámci přípravy na verzi 4.1 bylo provedeno více než 2000 změn od 276 vývojářů.

Klíč vylepšenípřidáno v QEMU 4.1:

  • Do emulátoru architektury x86 byla přidána podpora pro modely CPU Hygon Dhyana a Intel SnowRidge. Přidána emulace rozšíření RDRAND (hardwarový generátor pseudonáhodných čísel). Přidány vlajky
    md-clear a mds-no pro ovládání ochrany před útoky MDS (Microarchitectural Data Sampling) na procesorech Intel. Přidána možnost určit topologie integrovaných obvodů pomocí příznaku „-smp ...,dies=“. Verze byla implementována pro všechny modely CPU x86;

  • Ovladač bloku SSH byl přesunut z používání libssh2 na libsh;
  • Ovladač virtio-gpu (virtuální GPU vyvinutý jako součást projektu Virgil) přidána podpora pro přesun 2D/3D renderovacích operací do externího procesu vhost-user (například vhost-user-gpu);
  • Emulátor architektury ARM přidal podporu pro rozšíření ARMv8.5-RNG pro generování pseudonáhodných čísel. Podpora emulace FPU byla implementována pro čipy rodiny Cortex-M a problémy s emulací FPU pro Cortex-R5F byly vyřešeny. Byl navržen nový systém pro nastavení možností sestavení, navržený ve stylu Kconfig. Pro SoC Exynos4210 byla přidána podpora pro řadiče PL330 DMA;
  • Emulátor architektury MIPS zlepšil podporu instrukcí MSA ASE při použití pořadí bajtů big-endian a sladil zpracování dělení nulovými případy s referenčním hardwarem. Výkon emulace instrukcí MSA pro celočíselné výpočty a permutační operace byl zvýšen;
  • Emulátor architektury PowerPC nyní podporuje předávání na GPU NVIDIA V100/NVLink2 pomocí VFIO. Pro pseries byla implementována akcelerace emulace řadiče přerušení XIVE a byla přidána podpora pro hot plugging PCI mostů. Byly provedeny optimalizace emulace vektorových instrukcí (Altivec/VSX);
  • Do emulátoru architektury RISC-V byl přidán nový hardwarový model – „spike“. Přidána podpora pro ISA 1.11.0. Bylo vylepšeno 32bitové systémové volání ABI, vylepšeno zpracování neplatných instrukcí a vylepšený vestavěný debugger. Přidána podpora topologie CPU ve stromu zařízení;
  • Emulátor architektury s390 přidal podporu pro emulaci všech vektorových instrukcí ze skupiny „Vector Facility“ a přidal další prvky pro podporu systémů gen15 (včetně přidané podpory pro AP Queue Interruption Facility pro vfio-ap). Implementovaná podpora BIOSu pro bootování z ECKD DASD vázaného na hostující systém přes vfio-ccw;
  • V emulátoru architektury SPARC pro systémy sun4m byly vyřešeny problémy s použitím příznaku „-vga none“ pro OpenBIOS;
  • Emulátor procesoru rodiny Tensilica Xtensa zahrnuje možnosti pro MPU (jednotka ochrany paměti) a exkluzivní přístup;
  • Do příkazu „qemu-img convert“ byla přidána možnost „-salvage“, která deaktivuje pád procesu konverze obrazu v případě chyb I/O (lze například použít k obnovení částečně poškozených souborů qcow2). V týmu
    „qemu-img rebase“ funguje, když pro vstupní soubor ještě nebyl vytvořen záložní soubor;

  • Přidána možnost přesměrovat výstup organizovaný pomocí technologie "semihosting" (umožňuje emulovanému zařízení používat stdout, stderr a stdin k vytváření souborů na straně hostitele) do backendu chardev ("-semihosting-config enable=on,target=native ,chardev=[ ID]");
  • Přidána podpora pro podformát seSparse v režimu pouze pro čtení v ovladači bloku VMDK;
  • Přidána podpora pro řadič SiFive GPIO v ovladači emulace GPIO.

Zdroj: opennet.ru

Přidat komentář