Veröffentlichung des QEMU-Emulators 8.2

Die Veröffentlichung des Projekts QEMU 8.2 wurde vorgestellt. Als Emulator ermöglicht QEMU das Ausführen von Programmen, die für eine Hardware-Plattform entwickelt wurden, auf einem System mit einer völlig anderen Architektur, zum Beispiel eine Anwendung für ARM auf einem x86-kompatiblen PC auszuführen. Im Virtualisierungsmodus ist die Ausführungsgeschwindigkeit des Codes in einer isolierten Umgebung dank der direkten Ausführung von Instruktionen auf der CPU und der Nutzung des Hypervisors Xen oder des KVM-Moduls nahezu vergleichbar mit einem physischen System.

Ursprünglich wurde das Projekt von Fabrice Bellard mit dem Ziel ins Leben gerufen, die Ausführung von für die x86-Plattform kompilierten Linux-Binärdateien auf anderen Architekturen zu ermöglichen. Im Laufe der Jahre wurde die Unterstützung für die vollständige Emulation von 14 Hardware-Architekturen hinzugefügt, und die Anzahl der emulierten Hardwaregeräte überstieg 400. Für die Version 8.2 wurden über 3200 Änderungen von 238 Entwicklern vorgenommen.

Wichtige Verbesserungen in QEMU 8.2:

  • Ein virtio-sound Gerät wurde hinzugefügt, das die Emulation einer Soundkarte für die Aufnahme und Wiedergabe von Audio im Gastsystem ermöglicht, mithilfe eines Sound-Backends (pulseaudio, sdl oder coreaudio), das auf der Seite des Hostsystems funktioniert. Um das Soundgerät im Linux-Kernel für das Gastsystem zu emulieren, muss die Option CONFIG_SND_VIRTIO aktiviert sein.
  • Eine virtuelle Grafikschnittstelle (VGI, Virtual Graphics Interface) rutabaga mit der Implementierung eines virtuellen GPU (virtio-gpu) wurde hinzugefügt, die der zuvor verfügbaren VirGL ähnelt und ebenfalls die Nutzung eines virtuellen GPU im Gastsystem für 3D-Rendering ermöglicht, ohne exklusiven direkten Zugriff auf die physische GPU zu gewähren. Der Code rutabaga wurde im Rahmen des Projekts Android/CrosVM entwickelt und ermöglicht die Verwendung des Android-Plattformemulators mit gewöhnlichem QEMU.
  • Das hv-balloon-Gerät wurde mit der Implementierung des Dynamic Memory-Protokolls für Hyper-V hinzugefügt, das es ermöglicht, ungenutzte Speicherseiten während des Betriebs an das Host-System zurückzugeben und zusätzliche Speicherseiten bei Bedarf anzufordern. Das neue Gerät kann als Alternative zu virtio-balloon für Windows-Gastsysteme betrachtet werden, das auf der Host-Seite ein Backend verwendet, das das Dynamic Memory-Protokoll unterstützt.
  • Ein Universal Flash Storage-Gerät zur Emulation von Flash-Speichern wurde vorgeschlagen.
  • Der NBD (Network Block Device) Blocktreiber hat Unterstützung für eine Protok-erweiterung hinzugefügt, die 64-Bit-Offset zur Verbesserung der Leistung bei der Verarbeitung großer Datenmengen verwendet.
  • Der Befehl dump-guest-memory unterstützt nun die Ausgabe im Standardformat kdump.
  • Unterstützung für die Emulation von UFS wurde hinzugefügt, unter Verwendung neuer Geräte ufs und ufs-lu.
  • VFIO (Virtual Function I/O) hat Unterstützung für den P2P-Migrationsmodus hinzugefügt und ermöglicht die dynamische Zuweisung von MSI-X. Die Vorbereitung auf den Übergang zu einem neuen IOMMUFD-Backend wurde durchgeführt.
  • Im virtio-mem-Gerät wurde der Modus „dynamic-memslots=on“ implementiert, um mehrere Speicherslots dynamisch zuzuweisen, anstatt einen großen Slot statisch zu vergeben. Die Nutzung dieses Modus reduziert den Speicherverbrauch bei großen virtio-mem-Geräten, die der VM nur eine geringe Menge an Speicher bereitstellen.
  • Im Emulator der x86-Architektur wurde bei der Emulation der Xen-Hypervisor-Umgebung KVM die Unterstützung für die PV-Konsole und Netzwerkeinheiten sichergestellt sowie die Befehle für Block- und Netzwerkeinheiten vereinfacht. Im klassischen TCG-Codegenerator wurde die Unterstützung für SHA-Anweisungen hinzugefügt.
  • Im Emulator der ARM-Architektur wurde die Emulation der CPU Cortex-A710 und Neoverse-N2 realisiert. Die Unterstützung für die Prozessorerweiterungen PACQARMA3, EPAC, Pauth2, FPAC, FPACCOMBINE, TIDCP1, MOPS, HBC und HPMN0 wurde hinzugefügt. Für das Xilinx Versal-Board wurde die Modellierung der CFU/CFI- und TRNG-Geräte implementiert.
  • Im Emulator der RISC-V-Architektur wurde eine Reihe von vektorbasierten kryptografischen Befehlen implementiert. Die Unterstützung für virtuelle IRQs und die Filterung von IRQs wurde hinzugefügt. Die Unterstützung für die Zicond-Erweiterungen wurde stabilisiert. Zudem wurde die Unterstützung für die Virtualisierungs-Erweiterungen AIA (Advanced Interrupt Architecture) über KVM eingeführt.
  • Im Emulator der HPPA-Architektur wird die Emulation der 64-Bit-CPU PA-RISC 2.0 sowie des Systems C3700, einschließlich des Astro-Speichercontrollers und der PCI-Bridge Elroy, bereitgestellt.
  • Im Emulator der LoongArch-Architektur wird die Emulation der CPU Loongson LA132 realisiert. Unterstützung für die Befehlserweiterung LASX und den Befehl PRELDX wurde hinzugefügt.
  • Im Emulator der Architektur s390x wurde die Unterstützung für vfio-ap hinzugefügt, um den Crypto-Adapter für geschützte Gastsysteme durchzuleiten.
  • Im Tricore-Emulator wurde die Unterstützung für die TC37x-Prozessoren (ISA 1.6.2) und die Befehle CRCN, FTOU, FTOHP, HPTOF hinzugefügt.

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster