Veröffentlichung des Emulators QEMU 7.0

Die Version 7.0 des QEMU-Projekts wurde veröffentlicht. Als Emulator ermöglicht QEMU das AusfĂŒhren von Programmen, die fĂŒr eine bestimmte Hardware-Plattform erstellt wurden, auf einem System mit einer völlig anderen Architektur, wie zum Beispiel die AusfĂŒhrung einer ARM-Anwendung auf einem x86-kompatiblen PC. Im Virtualisierungsmodus ist die Leistung der CodeausfĂŒhrung in einer isolierten Umgebung fast so hoch wie auf einem physischen System, da die Anweisungen direkt auf der CPU ausgefĂŒhrt und der Hypervisor Xen oder das KVM-Modul verwendet werden.

UrsprĂŒnglich wurde das Projekt von Fabrice Bellard ins Leben gerufen, um die AusfĂŒhrung von fĂŒr die x86-Plattform kompilierten Linux-Executable-Dateien auf anderen Architekturen zu ermöglichen. Im Laufe der Jahre wurden umfassende EmulationsunterstĂŒtzung fĂŒr 14 Hardware-Architekturen hinzugefĂŒgt, und die Anzahl der emulierten Hardwaresysteme hat 400 ĂŒberschritten. FĂŒr die Version 7.0 wurden ĂŒber 2500 Änderungen von 225 Entwicklern vorgenommen.

Die wichtigsten Verbesserungen, die in QEMU 7.0 hinzugefĂŒgt wurden:

  • Im x86-Emulator wurde die UnterstĂŒtzung fĂŒr den Intel AMX-Befehlssatz (Advanced Matrix Extensions) eingefĂŒhrt, die in den Serverprozessoren Intel Xeon Scalable realisiert sind. AMX bietet neue anpassbare TMM «TILE»-Register und Anweisungen zur Manipulation von Daten in diesen Registern, wie TMUL (Tile matrix MULtiply) fĂŒr die Matrixmultiplikation.
  • Die Möglichkeit zur Protokollierung von ACPI-Ereignissen vom Gastbetriebssystem ĂŒber die ACPI ERST-Schnittstelle wurde bereitgestellt.
  • Im virtiofs-Modul, das verwendet wird, um Teile des Dateisystems des Hosts an das Gastbetriebssystem durchzureichen, wurde die UnterstĂŒtzung fĂŒr Sicherheitslabels verbessert. Eine Schwachstelle mit der CVE-2022-0358, die es ermöglicht, die eigenen Berechtigungen im System zu erhöhen, indem ausfĂŒhrbare Dateien in durch virtiofs weitergeleitete Verzeichnisse erstellt werden, die einer anderen Gruppe gehören und mit dem SGID-Flag versehen sind, wurde behoben.
  • Die FlexibilitĂ€t der Sicherung aktiver Systemabbilder, die sich gerade in Betrieb befinden, wurde erhöht (es wird ein Snapshot erstellt, nach dem ein Filter copy-before-write (CBW) angewendet wird, der Daten aus den Bereichen kopiert, in die das Gastbetriebssystem schreibt). UnterstĂŒtzung fĂŒr Abbildformate abgesehen von qcow2 wurde hinzugefĂŒgt. Der Zugriff auf den Snapshot mit Backup erfolgt nicht direkt, sondern ĂŒber den Snapshot-Zugriff der BlockgerĂ€tetreiber. Die Möglichkeiten zur Verwaltung der Filterbearbeitung wurden erweitert, zum Beispiel können bestimmte Bitmaps von der Verarbeitung ausgeschlossen werden.
  • Im ARM-Emulator fĂŒr ‘virt’-Maschinen wurde die UnterstĂŒtzung fĂŒr virtio-mem-pci, die Definition der CPU-Topologie fĂŒr das Gastsystem und die Aktivierung von PAuth bei Verwendung des Hypervisors mit einem Beschleuniger hvf hinzugefĂŒgt. KVM Im Emulator fĂŒr die ‘xlnx-versal-virt’-Plattform wurde die UnterstĂŒtzung fĂŒr PMC SLCR und die Emulation des Flash-Speichercontrollers OSPI hinzugefĂŒgt. FĂŒr emulierte Maschinen ‘xlnx-zynqmp’ wurden neue Modelle zur Steuerung von CRF und APU hinzugefĂŒgt. Die Emulation der Erweiterungen FEAT_LVA2, FEAT_LVA (Large Virtual Address Space) und FEAT_LPA (Large Physical Address Space) wurde ergĂ€nzt.
  • Im klassischen TCG (Tiny Code Generator) wurde die UnterstĂŒtzung fĂŒr Hosts mit CPU ARMv4 und ARMv5 eingestellt, da diese keine UnterstĂŒtzung fĂŒr nicht ausgerichteten Speicherzugriff bieten und nicht genĂŒgend RAM fĂŒr den Betrieb von QEMU zur VerfĂŒgung steht.
  • Im RISC-V-Architektur-Emulator wurde die UnterstĂŒtzung fĂŒr den KVM-Hypervisor hinzugefĂŒgt und die vektoriellen Erweiterungen Vector 1.0 sowie die Befehle Zve64f, Zve32f, Zfhmin, Zfh, zfinx, zdinx und zhinx{min} implementiert. FĂŒr emulierte Maschinen ‘spike’ wurde die UnterstĂŒtzung zum Laden von OpenSBI-BinĂ€rdateien (RISC-V Supervisor Binary Interface) ergĂ€nzt. FĂŒr emulierte Maschinen ‘virt’ wurde die Möglichkeit zur Verwendung von bis zu 32 CPU-Kernen und die UnterstĂŒtzung von AIA implementiert.
  • Im HPPA-Architektur-Emulator wurde die Möglichkeit zur Verwendung von bis zu 16 vCPU hinzugefĂŒgt und der Grafiktreiber fĂŒr Benutzerumgebungen HP-UX VDE/CDE verbessert. Außerdem kann die Bootreihenfolge fĂŒr SCSI-GerĂ€te geĂ€ndert werden.
  • Im OpenRISC-Architektur-Emulator fĂŒr die ‘sim’-Plattform wurde die UnterstĂŒtzung fĂŒr die Verwendung von bis zu 4 CPU-Kernen, das Laden eines externen Initrd-Images und die automatische Generierung eines Device Trees fĂŒr den geladenen Kernel hinzugefĂŒgt.
  • Im PowerPC-Architektur-Emulator fĂŒr emulierte Maschinen ‘pseries’ wurde die Möglichkeit zur AusfĂŒhrung von Gast-Systemen unter einem verschachtelten KVM-Hypervisor implementiert. Die UnterstĂŒtzung fĂŒr das GerĂ€t spapr-nvdimm wurde hinzugefĂŒgt. FĂŒr emulierte Maschinen ‘powernv’ wurde die UnterstĂŒtzung fĂŒr den Interrupt-Controller XIVE2 und die Controller PHB5 erweitert sowie die UnterstĂŒtzung fĂŒr XIVE und PHB 3/4 verbessert.
  • Im s390x-Architektur-Emulator wurde die UnterstĂŒtzung fĂŒr die Erweiterungen z15 (Miscellaneous-Instruction-Extensions Facility 3) hinzugefĂŒgt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4