Vydání emulátoru QEMU 4.1

Představení uvolnění projektu QEMU 4.1. Jako emulátor QEMU umožňuje spustit program sestavený pro jednu hardwarovou platformu na systému s úplně jinou architekturou, například spustit aplikaci pro ARM na počítači kompatibilním s x86. V režimu virtualizace má QEMU výkon kódu běžícího v izolovaném prostředí blízký nativnímu systému díky přímému vykonávání instrukcí na CPU a zapojení hypervisoru Xen nebo modulu KVM.

Projekt byl původně vytvořen Fabrice Bellard jako prostředek pro spouštění Linuxových spustitelných souborů určených pro platformu x86 na architekturách jiných než x86. Během let vývoje byla přidána podpora plné emulace pro 14 hardwarových architektur, přičemž počet emulovaných hardwarových zařízení přesáhl 400. Při přípravě verze 4.1 bylo provedeno více než 2000 změn od 276 vývojářů.

Klíčové vylepšení, přidané do QEMU 4.1:

  • Do emulátoru architektury x86 byla přidána podpora modelů CPU Hygon Dhyana a Intel SnowRidge. Byla přidána emulace rozšíření RDRAND (hardwarový generátor pseudonáhodných čísel). Přidány příznaky
    md-clear a mds-no pro řízení ochrany proti útokům MDS (Microarchitectural Data Sampling) na procesory Intel. Byla přidána možnost určení topologií integrovaných obvodů pomocí příznaku „-smp …,dies=“. Bylo implementováno verzování pro všechny modely CPU x86;
  • Blokový ovladač SSH byl převeden z používání libssh2 na libssh;
  • Do ovladače virtio-gpu (virtuální GPU, vyvíjený v rámci projektu Virgil) byla přidána podpora přesunu operací renderování 2D/3D do externího procesu vhost-user (například vhost-user-gpu);
  • Do emulátoru architektury ARM byla přidána podpora rozšíření ARMv8.5-RNG pro generování pseudonáhodných čísel. Byla zavedena podpora emulace FPU pro čipy rodiny Cortex-M a vyřešeny problémy s emulací FPU pro Cortex-R5F. Byla navržena nová systémová konfigurace možností sestavení, prezentovaná ve stylu Kconfig. Pro SoC Exynos4210 byla přidána podpora DMA řadičů PL330;
  • V emulátoru architektury MIPS byla zlepšena podpora instrukcí MSA ASE při použití pořadí bajtů big-endian a byla dorovnána zpracování případů dělení nulou ke standardnímu zařízení. Byla zvýšena výkonnost emulace instrukcí MSA pro celočíselné výpočty a operace permutace;
  • V emulátoru architektury PowerPC byla přidána podpora předávání na GPU NVIDIA V100/NVLink2 pomocí VFIO. Pro pseries byla implementována akcelerace emulace ovladače přerušení XIVE a byla přidána podpora horkého připojení PCI mostů. Byla provedena optimalizace emulace vektorových instrukcí (Altivec/VSX);
  • Do emulátoru architektury RISC-V byla přidána nová modelová zařízení – „spike“. Přidána podpora ISA 1.11.0. Vylepšena 32bitová ABI systémových volání, rozšířena zpracování neplatných instrukcí a zlepšen vestavěný ladicí nástroj. Přidána podpora topologie CPU v zařízení tree;
  • Do emulátoru architektury s390 byla přidána podpora emulace všech vektorových instrukcí skupiny „Vector Facility“ a byly přidány další prvky pro podporu systémů gen15 (včetně přidání podpory AP Queue Interruption Facility pro vfio-ap). Byla implementována podpora BIOS pro načítání z ECKD DASD připojeného k hostitelskému systému přes vfio-ccw;
  • Ve SPARC emulátoru pro systémy sun4m byly vyřešeny problémy s použitím příznaku „-vga none“ pro OpenBIOS;
  • V emulátoru procesorů rodiny Tensilica Xtensa byly implementovány možnosti pro MPU (jednotka ochrany paměti) a výlučný přístup;
  • Do příkazu „qemu-img convert“ byla přidána volba „—salvage“ pro deaktivaci havarijního ukončení procesu převodu obrazu v případě vstupně/výstupních chyb (například se dá použít pro obnovení částečně poškozených souborů qcow2). V příkazu
    „qemu-img rebase“ byla zajištěna funkčnost, když pro vstupní soubor zatím nebyl vytvořen základní (backing) soubor;
  • Byla přidána možnost přesměrování výstupu organizovaného 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]“);
  • Do blokového ovladače VMDK byla přidána podpora subformátu seSparse v režimu pouze pro čtení;
  • Do ovladače emulace GPIO byla přidána podpora GPIO kontroléru SiFive.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster