Vydání emulátoru QEMU 4.2

Představení uvolnění projektu QEMU 4.2. 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 Fabricem Bellardem s cílem umožnit spouštění textových souborů Linux určených pro platformu x86 na architekturách odlišných od x86. Během let vývoje byla přidána podpora plné emulace pro 14 hardwarových architektur a počet emulovaných hardwarových zařízení přesáhl 400. Při přípravě verze 4.2 bylo provedeno více než 2200 změn od 198 vývojářů.

Klíčové vylepšení, které byly přidány do QEMU 4.2:

  • Ve klasickém generátoru kódu TCG (Tiny Code Generator) byla implementována podpora pluginů pro sledování instrukcí procesoru a adres v paměti;
  • V ovladači blokových zařízení NBD (Network Block Device) byla zajištěna efektivnější správa požadavků na kopírování při čtení (copy-on-read). Kód NBD serveru byl optimalizován pro kopírování sparse obrazů (s prázdnými oblastmi). Byla provedena obecná zlepšení v realizaci klienta a serveru NBD;
  • Byla zvýšena výkonnost šifrování disků LUKS s použitím algoritmu AES-XTS;
  • Ve vfio-pci byla přidána podpora vlastnosti „failover_pair_id“ pro usnadnění migrace zařízení VFIO;
  • Ve virtio-mmio byla přidána podpora standardu virtio-compatible 2 a specifikovaného mechanismu zabalených virtuálních front (virtqueue) pro výměnu dat s virtuálním zařízením vstupu/výstupu v dávkovém režimu;
  • V emulátoru architektury x86 byl přidán nový typ emulovaných strojů „microvm“, které používají virtio-mmio místo PCI pro optimalizaci výkonu. Byla implementována možnost zapnutí a vypnutí VMX pomocí příznaků „-cpu“. Byla přidána podpora emulace rozšíření AVX512 BFloat16. Byla zajištěna podpora nových modelů CPU Denverton (serverový SoC založený na Architektuře Atom), Snowridge a Dhyana. Stabilizována podpora macOS Hypervisor Framework („-accel hvf“);
  • V emulátoru architektury ARM byla přidána podpora emulace SoC Aspeed AST2600 („ast2600-evb“). Byla přidána podpora technologie Semihosting 2.0 s rozšířeními STDOUT_STDERR/EXIT_EXTENDED, což umožňuje emulovanému zařízení používat stdout, stderr a stdin pro vytváření souborů na straně hostitele. V KVM byla přidána možnost použití více než 256 CPU a byla zajištěna podpora SIMD instrukcí SVE. V virtuálních strojích typu „virt“ byla implementována podpora horkého připojení paměti. Byla zvýšena výkonnost emulace pomocí generátoru kódu TCG.
  • V emulátoru architektury PowerPC byla přidána podpora emulace instrukcí POWER9 mffsce, mffscrn a mffscrni. V emulovaných strojích „powernv“ byla přidána podpora systémových zařízení Homer a OCC SRAM;
  • V emulátoru architektury RISC-V byla přidána volba „-initrd“ a možnost zobrazení plného stavu architektury v ladicím nástroji;
  • V emulátoru architektury s390 byla implementována podpora instrukcí IEP (Instruction Execution Protection);
  • V emulátoru architektury 68k byla přidána počáteční podpora emulace Macintosh Quadro 800 a klasických systémů NeXTcube;
  • V emulátoru architektury xtensa byl přidán nový typ emulovaných strojů „virt“ a byla implementována podpora ABI call0 pro emulaci v uživatelském prostoru.

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