QEMU 10.0.0 Emulator veröffentlicht

Die Veröffentlichung des QEMU 10.0.0-Projekts wurde vorgestellt. 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 ist 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 in Linux oder des NVMM-Moduls nahe an der des Hardwaresystems NetBSD.

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 10.0 wurden mehr als 2800 Änderungen von 211 Entwicklern vorgenommen.

Wichtige Verbesserungen, die in QEMU 10.0 hinzugefügt wurden:

  • Der virtio-scsi-Treiber stellt einen virtuellen SCSI-Controller (SCSI-Hostbusadapter) bereit für virtuelle MaschinenDie Unterstützung für ein mehrstufiges Warteschlangensystem (Multiqueue) wurde hinzugefügt. Dadurch können Warteschlangen für verschiedene Blockgeräte getrennt werden, um den Multithread-Zugriff auf Mehrkernsystemen zu ermöglichen (unterschiedliche Warteschlangen für ein einzelnes Laufwerk können von verschiedenen E/A-Threads verarbeitet werden). Im Vergleich zum virtuellen Blockgerätetreiber (virtio-blk) ist der virtuelle SCSI-Controller etwas langsamer, ermöglicht aber die Verwendung von mehr als 28 Laufwerken.
  • VFIO (Virtual Function I/O) verfügt über eine verbesserte IGD-Passthrough-Unterstützung (Integrated Graphics Device) für integrierte GPUs, die in Intel-Prozessoren der 11. (Rocket Lake) und 12. (Alder Lake) Generation verwendet werden. Unterstützung für ältere ATI-GPUs (x550) hinzugefügt. Grundlegende Unterstützung für PCI PM (Power Management) wurde implementiert.
  • Die Dokumentation für das QEMU Machine Protocol (QMP), das Anwendungen die Steuerung von QEMU ermöglicht, wurde erheblich überarbeitet und erweitert.
  • Ein neuer Live-Migrationsmodus „cpr-transfer“ (CheckPoint und Neustart) wurde hinzugefügt, der es ermöglicht, ein Gastsystem auf eine neue QEMU-Instanz zu verschieben, die auf demselben Host ausgeführt wird. Der Modus minimiert die Unterbrechungszeit, indem er den Speicher des Gastsystems in den virtuellen Adressraum des neuen QEMU abbildet, ohne den Inhalt zu kopieren.
  • Grafikgeräte „apple-gfx-pci“ und „apple-gfx-mmio“ hinzugefügt, die das in macOS bereitgestellte ParavirtualizedGraphics-Framework für hardwarebeschleunigte Grafiken in Gästen verwenden. Der erste Treiber ist für die Verwendung auf x86-64-Geräten vorgesehen, der zweite für ARM64.
  • Der Emulator mit x86-Architektur unterstützt jetzt die Prozessormodelle Intel Xeon Clearwater Forest und Sierra Forest v2. Die Emulation von Anweisungen zur String-Datenmanipulation wurde beschleunigt.
  • Der ARM-Architektur-Emulator unterstützt jetzt NPCM8445 Evaluation und i.MX 8M Plus EVK-Boards. Emulation der Erweiterungen FEAT_AFP, FEAT_RPRES und FEAT_XS sowie physischer und virtueller EL2-Timer hinzugefügt. Veraltete Unterstützung für Arm PXA2xx-CPUs und iwMMXt-Befehlsemulation.
  • Der RISC-V-Architekturemulator implementiert die Emulation von Microblaze V-Boards, Ascalon-CPU und RV64 Xiangshan Nanhu-CPU. Unterstützung für die Befehlssatzarchitekturerweiterungen „svukte“, „ssstateen“, „smrnmi“, „smdbltrp“/„ssdbltrp“, „supm“, „sspm“ sowie IOMMU-Übersetzungs-Tags und riscv-iommu-sys-Geräte hinzugefügt.
  • Der HPPA-Architekturemulator ermöglicht die Emulation von Diva GSP BMC-Boards. Die SeaBIOS-hppa-Firmware wurde auf Version 18 aktualisiert. Erhöhte Übertragungsgeschwindigkeit. Verbesserter Code zum Zurücksetzen der virtuellen CPU. Auf 64-Bit-Systemen ist die Emulation von Konfigurationen mit Speichergrößen bis zu 256 GB möglich.
  • Der LoongArch-Architekturemulator unterstützt nun CPU-Hotplugging. Ein paravirtualisierter IPI (Interprozessor-Interrupt) wurde implementiert. Die Überwachung von Timeouts bei der Hypervisor-Ressourcenzuweisung wurde ebenfalls implementiert. KVMUnterstützung für virtuelles Routing externer Interrupts (extioi) hinzugefügt.
  • Der Emulator der s390x-Architektur fügt Unterstützung für die 17. Generation von Mainframe-CPUs hinzu und implementiert Virtio-Mem-Unterstützung. Zur Verbesserung der Leistung wurde die Möglichkeit hinzugefügt, unter Umgehung der IOMMU mit PCI-Geräten zu interagieren.

Source: opennet.ru

Kommentar hinzufügen