QEMU 7.1 implementiert Verbesserungen bei der Speicherübertragung in Linux
Die Veröffentlichung von QEMU Version 7.1 wurde bekanntgegeben. Sie enthält zahlreiche Verbesserungen für verschiedene Emulatoren , insbesondere für ARM und RISC-V sowie eine optimierte Speicherübertragung unter Linux. Zur Vorbereitung von Version 7.1 wurden über 2800 Änderungen von 238 Entwicklern vorgenommen.
Für diejenigen, die neu bei QEMU sind, sollten Sie wissen, dass Sie damit ein Programm ausführen können, das für eine Hardwareplattform auf einem System mit einer völlig anderen Architektur erstellt wurde, z. B. das Ausführen einer ARM-Anwendung auf einem x86-kompatiblen PC.
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 KVM-Moduls ähnlich der eines Hardwaresystems.
Hauptnachrichten von QEMU 7.1
In dieser neuen Version für Linux ist die Option "Zero-Copy-Send" implementiert , die die Organisation von Speicherseitenübertragungen während der Live-Migration ohne Zwischenpufferung ermöglicht.
Darüber hinaus bietet QMP (QEMU Machine Protocol) die Möglichkeit, mit dem Befehl `block-export-add` NBD-Images mit Seitendaten im „geänderten“ Zustand zu exportieren. Außerdem wurden die neuen Befehle `query-stats` und `query-stats-schema` hinzugefügt, um Statistiken verschiedener QEMU-Subsysteme abzufragen.
Eine weitere wichtige Änderung in dieser neuen QEMU-Version ist die verbesserte Kompatibilität des Gastagenten mit der Solaris-Plattform. Zudem wurden die neuen Befehle „guest-get-diskstats“ und „guest-get-cpustats“ hinzugefügt, um den Status von Festplatte und CPU anzuzeigen. Der Befehl „guest-get-disks“ liefert nun auch NVMe-SMART-Informationen, und der Befehl „guest-get-fsinfo“ enthält nun Informationen zum NVMe-Bustyp.
Zusätzlich wurde ein neuer LoongArch-Emulator hinzugefügt, der die 64-Bit-Version der LoongArch-Befehlssatzarchitektur (LA64) unterstützt. Der Emulator unterstützt Loongson 3 5000-Prozessoren und Loongson 7A1000-Northbridges.
Darüber hinaus wird hervorgehoben, dass der ARM-Emulator neue Arten von emulierten Maschinen implementiert hat: Aspeed AST1030 SoC, Qualcomm und AST2600/AST1030 (fby35). Zusätzlich wurde die Unterstützung für die Emulation von Cortex-A76- und Neoverse-N1-CPUs sowie SME (Scalable Matrix Extensions), RAS (Reliability, Availability, Serviceability) Prozessorerweiterungen und Befehle zum Blockieren interner Cache-Lecks während der Ausführung spekulativer Anweisungen in der CPU hinzugefügt.
Der RISC-V-Architekturemulator bietet nun Unterstützung für die neuen Befehlssatzerweiterungen (ISAs) gemäß Spezifikation 1.12.0 sowie zusätzliche Unterstützung für die Sdtrig-Erweiterung und eine verbesserte Unterstützung für Vektorbefehle.
Weitere bemerkenswerte Änderungen in dieser neuen Version sind:
- Verbesserte Debugging-Optionen.
- Unterstützung für Trusted Platform Module (TPM) zur emulierten Maschine „virt“ und Unterstützung für Ibex SPI zur Maschine „OpenTitan“ hinzugefügt.
- Der x86-Emulator für KVM hat Unterstützung für die Virtualisierung des LBR-Trace-Mechanismus (Last Branch Record) hinzugefügt.
- Implementierte GICv4-Interrupt-Handler-Emulation für „virt“-Maschinen.
- Der HPPA-Architektur-Emulator bietet eine neue Firmware auf Basis von SeaBIOS v6, die die Verwendung einer PS/2-Tastatur im Boot-Menü unterstützt.
- Verbesserte Emulation der seriellen Schnittstelle.
- Zusätzliche Schriftarten für die STI-Konsole hinzugefügt.
- Der MIPS-Architektur-Emulator für Nios2-Boards (-machine 10m50-ghrd) implementiert Vektor-Interrupt-Controller-Emulation und Schattenregistersatz.
- Verbesserte Ausnahmebehandlung.
- Möglichkeit zur Verwendung von bis zu 4 16550A-UART-Geräten im OpenRISC-Architekturemulator für die „or1k-sim“-Maschine hinzugefügt.
- Der 390x-Architekturemulator bietet Unterstützung für die Erweiterungen Vector-Enhancements Facility 2 (VEF 2). Das s390-ccw-BIOS kann von Festplatten mit einer anderen Sektorgröße als 512 Byte booten.
- Unterstützung für lx106-Kernel und Cache-Testobjektcodes zum Xtensa-Architekturemulator hinzugefügt.
Wenn Sie schließlich mehr über die Änderungen und neuen Funktionen in dieser neuen Version von QEMU 7.1 erfahren möchten , finden Sie Details und weitere Informationen unter dem folgenden Link.