Nach acht Monaten der Entwicklung wurde die Freigabe des freien Hypervisors Xen 4.16 veröffentlicht. An der Entwicklung der neuen Version waren Unternehmen wie Amazon, Arm, Bitdefender, Citrix und EPAM Systems beteiligt. Die Veröffentlichung von Updates fĂŒr den Xen 4.16-Zweig wird bis zum 2. Juni 2023 fortgesetzt, wĂ€hrend die Veröffentlichung von Sicherheitskorrekturen bis zum 2. Dezember 2024 erfolgt.
Wesentliche Ănderungen in Xen 4.16:
- Im TPM Manager, der den Betrieb virtueller Chips zum Speichern kryptographischer SchlĂŒssel (vTPM) auf der Grundlage des physikalischen TPM (Trusted Platform Module) gewĂ€hrleistet, wurden Korrekturen vorgenommen, um die UnterstĂŒtzung der TPM 2.0-Spezifikation spĂ€ter zu implementieren.
- Die AbhÀngigkeit von der PV Shim-Schicht, die zum Starten unmodifizierter para-virtualisierter Gastsysteme (PV) in PVH- und HVM-Umgebungen verwendet wird, wurde erhöht. In Zukunft wird die Verwendung von 32-Bit para-virtualisierten Gastsystemen nur im PV Shim-Modus möglich sein, was die Anzahl der Stellen im Hypervisor verringert, an denen potenzielle SicherheitsanfÀlligkeiten bestehen könnten.
- Die Möglichkeit des Ladens auf Intel-GerĂ€ten ohne programmierbaren Timer (PIT, Programmable Interval Timer) wurde hinzugefĂŒgt.
- Veraltete Komponenten wurden bereinigt, und der Standardaufbau des Codes "qemu-xen-traditional" und PV-Grub wurde eingestellt (die Notwendigkeit fĂŒr Xen-spezifische Forks entfiel nach der Ăbertragung der Ănderungen mit Xen-UnterstĂŒtzung in den Hauptbestand von QEMU und Grub).
- FĂŒr Gastsysteme mit ARM-Architektur wurde eine erste UnterstĂŒtzung fĂŒr virtualisierte ZĂ€hler zur LeistungsĂŒberwachung (Performance Monitor Counters) implementiert.
- Die UnterstĂŒtzung des dom0less-Modus wurde verbessert, der eine Bereitstellung der dom0-Umgebung beim Serverstart ĂŒberflĂŒssig macht. virtuelle Maschinen In der frĂŒhen Phase des Serverstarts wurden Ănderungen vorgenommen, die die UnterstĂŒtzung von 64-Bit-ARM-Systemen mit EFI-Firmware ermöglichten.
- Die UnterstĂŒtzung heterogener 64-Bit-ARM-Systeme basierend auf der big.LITTLE-Architektur wurde verbessert, die leistungsstarke, aber energiehungrige Kerne sowie weniger leistungsstarke, aber energieeffiziente Kerne in einem Chip kombiniert.
Gleichzeitig veröffentlichte das Unternehmen Intel die Version 20.0 des Cloud Hypervisor, der auf Komponenten des gemeinsamen Projekts Rust-VMM basiert, an dem neben Intel auch die Firmen Alibaba, Amazon, Google und Red Hat beteiligt sind. Rust-VMM ist in der Programmiersprache Rust geschrieben und ermöglicht die Erstellung von hypervisoren, die auf bestimmte Aufgaben zugeschnitten sind. Cloud Hypervisor ist einer dieser Hypervisoren, der einen hochgradigen Monitor fĂŒr virtuelle Maschinen (VMM) bietet, der auf KVM basiert und fĂŒr die spezifischen Anforderungen von Cloud-Systemen optimiert ist. Der Code des Projekts ist unter der Lizenz Apache 2.0 verfĂŒgbar.
Cloud Hypervisor konzentriert sich auf die AusfĂŒhrung moderner Linux-Distributionen unter Verwendung von paravirtualisierten GerĂ€ten auf Basis von virtio. Zu den wichtigsten Aufgaben gehören: hohe ReaktionsfĂ€higkeit, geringer Speicherverbrauch, hohe Leistung, vereinfachte Konfiguration und Reduzierung möglicher Angriffsvektoren. Die UnterstĂŒtzung fĂŒr Emulation wurde auf ein Minimum beschrĂ€nkt, und es wird auf Paravirtualisierung gesetzt. Derzeit werden nur x86_64-Systeme unterstĂŒtzt, aber es ist geplant, auch AArch64 zu unterstĂŒtzen. Derzeit werden nur 64-Bit-Versionen von Linux als Gastsysteme unterstĂŒtzt. Die Konfiguration von CPU, Speicher, PCI und NVDIMM erfolgt wĂ€hrend des Aufbaus. Die Möglichkeit zur Migration von virtuellen Maschinen zwischen Servern.
In der neuen Version:
- FĂŒr die Architekturen x86_64 und aarch64 ist jetzt die Erstellung von bis zu 16 PCI-Segmenten erlaubt, was die Gesamtanzahl der zulĂ€ssigen PCI-GerĂ€te von 31 auf 496 erhöht.
- Die UnterstĂŒtzung fĂŒr das Binden virtueller CPUs an physische CPU-Kerne (CPU-Pinning) wurde implementiert. FĂŒr jede vCPU kann jetzt eine begrenzte Anzahl von Host-CPUs festgelegt werden, auf denen die AusfĂŒhrung erlaubt ist, was nĂŒtzlich sein kann, wenn Ressourcen des Hosts und des Gastsystems direkt 1:1 abgebildet werden oder wenn eine virtuelle Maschine auf einem bestimmten NUMA-Knoten gestartet wird.
- Die UnterstĂŒtzung fĂŒr die Virtualisierung von Ein- und Ausgabe wurde verbessert. Jeder VFIO-Bereich kann jetzt im Speicher abgebildet werden, was die Anzahl der Ausgaben aus der virtuellen Maschine verringert und die Leistung bei der Durchleitung von GerĂ€ten in die virtuelle Maschine erhöht.
- Im Rust-Code wurde daran gearbeitet, unsafe-Abschnitte durch alternative Implementierungen zu ersetzen, die im sicheren Modus ausgefĂŒhrt werden. FĂŒr die verbleibenden unsafe-Abschnitte wurden detaillierte Kommentare hinzugefĂŒgt, die erklĂ€ren, warum der verbleibende unsafe-Code als sicher angesehen werden kann.
Quelle: opennet.ru
