Intel Xeon E7

Server-Virtualisierung mit Intel VT-x

24.05.2011
Von Julian Bühler
Intel VT-x verhindert Privilegienkonflikte und macht eine effektive Virtualisierung auf der x86-Architektur möglich
Intel VT-x verhindert Privilegienkonflikte und macht eine effektive Virtualisierung auf der x86-Architektur möglich
Foto: Intel

Grundsätzlich hat das Thema Virtualisierung auch den Storage-, Desktop- und Netzwerk-Markt erreicht, allerdings verzeichnet die Server-Virtualisierung bisher die größten Zuwächse. Mit Intel VT-x haben Xeon-CPUs hier wichtige Neuerungen erhalten, die ein effizientes Virtualisieren auf x86-basierten Servern erst möglich machen. Der historische Hintergrund liegt im Privilegienmodell der x86-Architektur, das es nur zentralen Komponenten erlaubt, direkt auf die Hardware zuzugreifen. Diese höchste Stufe wird im Ringmodell als "Ring 0" benannt, während Applikationen im User-Mode "Ring 3" über die geringsten Rechte verfügen.

Für eine Virtualisierung wird zwischen diesen Ringstufen eine Softwareschicht implementiert, die die Kommunikation zwischen Hardware (also CPU) und Gast-Betriebssystemen kontrollieren muss. Man spricht bei dieser Ebene vom Hypervisor oder auch Virtual Machine Manager (VMM). Wenn ein noch nicht für Virtualisierung optimiertes Betriebssystem nun in dieser Umgebung läuft, kommt es zu einem Privilegienkonflikt, weil das OS, nun unerlaubterweise, nach wie vor Ring-0-Instruktionen direkt ausführen will. Dieses Problem wurde durch Intel VT-x (mit dem "VMX Root mode") behoben, da jetzt eine zusätzliche Schicht für Klarheit bei den Rechten sorgt und den Hypervisor korrekt arbeiten lässt.

Die Funktionen von Intel VT-x im Detailüberblick

Doch Intel VT-x belässt es nicht beim Privilegienmanagement, sondern bringt noch weitere wichtige Funktionen mit. Ein Überblick erklärt die wichtigsten Begriffe:

VT-d: Intel Virtualization Technology for Directed I/O

Bei der Virtualisierung von Ein- und Ausgabeoperationen (Input/Output, kurz I/O) ist erneut der Hypervisor gefragt, um Ressourcen zuverlässig und ohne Konflikte zwischen den verschiedenen Virtual Machines (VMs) bereitzustellen. Um ein I/O-Gerät verfügbar zu machen, gibt es verschiedene Modelle; doch in jedem Fall muss die I/O-Virtualisierung fähig sein, Gerätezugriffe auf die Ressourcen zu beschränken, die das entsprechende Gastsystem in Besitz hat. Zu diesem Zweck hat Intel VT-d vier Schlüsselfunktionen:

- I/O device assignment: Mit dieser Funktion können Administratoren I/O-Geräte bestimmten Virtual Machines (VMs) zuweisen und diese nach Wunsch konfigurieren.

- DMA remapping: Unterstützt die unabhängige Übersetzung von Direct Memory Access (DMA) bei den entsprechenden Geräten.

- Interrupt remapping: Unterstützt das Isolieren und Übermitteln von Interrupts von Geräten sowie externen Interrupt-Controllern zur jeweiligen VM.

- Reliability features: Protokolliert und meldet mögliche Fehler bei DMA und Interrupts und kann so mögliche Probleme frühzeitig verhindern.