Veröffentlichung des QEMU 5.0-Emulators

Eingereicht von Projektfreigabe QEMU 5.0. Als Emulator ermöglicht Ihnen QEMU, ein für eine Hardwareplattform kompiliertes Programm auf einem System mit einer völlig anderen Architektur auszuführen, beispielsweise eine ARM-Anwendung auf einem x86-kompatiblen PC auszuführen. Im Virtualisierungsmodus in QEMU kommt die Leistung der Codeausführung in einer isolierten Umgebung aufgrund der direkten Ausführung von Anweisungen auf der CPU und der Verwendung des Xen-Hypervisors oder des KVM-Moduls der des nativen Systems nahe.

Das Projekt wurde ursprünglich von Fabrice Bellard ins Leben gerufen, um die Ausführung von für die x86-Plattform erstellten ausführbaren Linux-Dateien auf Nicht-x86-Architekturen zu ermöglichen. Im Laufe der Jahre der Entwicklung wurde die vollständige Emulationsunterstützung für 14 Hardwarearchitekturen hinzugefügt, die Anzahl der emulierten Hardwaregeräte hat 400 überschritten. In Vorbereitung auf Version 5.0 wurden mehr als 2800 Änderungen von 232 Entwicklern vorgenommen.

Taste Verbesserungenin QEMU 5.0 hinzugefügt:

  • Die Möglichkeit, einen Teil des Dateisystems der Host-Umgebung an das Gastsystem weiterzuleiten virtiofsd. Das Gastsystem kann auf der Seite des Hostsystems ein für den Export markiertes Verzeichnis mounten, was die Organisation des gemeinsamen Zugriffs auf Verzeichnisse in Virtualisierungssystemen erheblich vereinfacht. Im Gegensatz zur Verwendung von Netzwerkdateisystemen wie NFS und virtio-9P können Sie mit virtiofs eine Leistung erzielen, die der eines lokalen Dateisystems nahe kommt;
  • Unterstützen Live-Migration von Daten aus externen Prozessen über den QEMU D-Bus;
  • Benutzerfreundlichkeit Speicher-Backends um den Betrieb des Haupt-RAMs des Gastsystems sicherzustellen. Das Backend wird mit der Option „-machine memory-backend“ angegeben;
  • Neuer „Komprimierungs“-Filter, mit dem komprimierte Image-Backups erstellt werden können;
  • Der Befehl „qemu-img Measure“ kann jetzt mit LUKS-Bildern arbeiten, und die Option „--target-is-zero“ wurde zum Befehl „qemu-img Convert“ hinzugefügt, um das Nullen des Zielbilds zu überspringen;
  • Experimentelle Unterstützung für den Prozess qemu-storage-daemon hinzugefügt, der Zugriff auf die QEMU-Blockebene und QMP-Befehle ermöglicht, einschließlich der Ausführung von Blockgeräten und dem integrierten NBD-Server, ohne dass eine vollständige virtuelle Maschine ausgeführt werden muss;
  • Der ARM-Architektur-Emulator verfügt über die Möglichkeit, Cortex-M7-CPUs zu emulieren, und bietet Unterstützung für Tacoma-BMC-, Netduino Plus 2- und Orangepi-PC-Boards. Unterstützung für vTPM- und virtio-iommu-Geräte für „virt“ emulierte Maschinen hinzugefügt. Die Möglichkeit, AArch32-Hostsysteme zum Ausführen von KVM-Gastumgebungen zu verwenden, ist veraltet. Unterstützung für die Emulation der folgenden Architekturfunktionen wurde implementiert:
    • ARMv8.1: HEV, VMID16, PAN, PMU
    • ARMv8.2: UAO, DCPoP, ATS1E1, TTCNP
    • ARMv8.3: RCPC, CCIDX
    • ARMv8.4: PMU, RCPC
  • Unterstützung für Grafikkonsolen zum HPPA-Architektur-Emulator mit dem HP Artist-Grafikgerät hinzugefügt;
  • Unterstützung für den GINVT-Befehl (Global Invalidation TLB) zum MIPS-Architektur-Emulator hinzugefügt;
  • Dem PowerPC-Architektur-Emulator für „powernv“-Maschinen wurde die Emulation von KVM-Hardwarebeschleunigungstools für die Ausführung von Gastsystemen hinzugefügt
    KVM mit klassischem TCG-Codegenerator (Tiny Code Generator). Um persistenten Speicher zu emulieren, wurde Unterstützung für in der Datei wiedergegebene NVDIMMs hinzugefügt. Für „pseries“-Maschinen entfällt die Notwendigkeit eines Neustarts, um den Betrieb der XIVE/XICS-Interrupt-Controller im „ic-mode=dual“-Modus zu koordinieren;

  • Der RISC-V-Architektur-Emulator für die „virt“- und „sifive_u“-Boards bietet Unterstützung für Standard-Linux-Syscon-Treiber für die Energie- und Neustartverwaltung. Goldfish RTC-Unterstützung wurde für das „virt“-Board hinzugefügt. Experimentelle Implementierung von Hypervisor-Erweiterungen hinzugefügt;
  • Beim Betrieb im KVM-Modus wurde dem s390-Architektur-Emulator AIS-Unterstützung (Adapter Interrupt Suppression) hinzugefügt.

Source: opennet.ru

Kommentar hinzufügen