Teil 5: Der Rechner im Rechner
Die "Xenisierung" der CPU wird dadurch erleichtert, dass ein Prozessor vier, auch als Ringe bezeichnete, hierarchische Zugriffsebenen mit unterschiedlichen Rechten kennt. Der innere Ring 0 verfügt über die meisten Privilegien; je weiter außen ein Ring liegt, desto geringer die Rechte. So läuft...
Die "Xenisierung" der CPU wird dadurch erleichtert, dass ein Prozessor vier, auch als Ringe bezeichnete, hierarchische Zugriffsebenen mit unterschiedlichen Rechten kennt. Der innere Ring 0 verfügt über die meisten Privilegien; je weiter außen ein Ring liegt, desto geringer die Rechte.
So läuft das Betriebssystem im Normalfall auf der Ebene 0, alle Anwendungen nutzen Ebene 3. Aufgrund der unterschiedlichen Rechte ist es auf Ebene 3 laufenden Anwendungen unmöglich, Ressourcen der Ebene 0 zu verwenden. Andersherum funktioniert es hingegen, so dass das Betriebssystem jederzeit auf andere Ebenen zugreifen kann.

Damit virtuelle Maschinen ihre Arbeit verrichten, müssen sie theoretisch im Ring 0 laufen. Dies ist aber aufgrund der bereits angesprochenen Architektur unmöglich, so dass die Programme auf die Ebenen 1 und 2 ausweichen. Dazu ist aber eine Anpassung nötig. In der Praxis funktioniert dies nach folgendem Muster: Im ersten Schritt bootet der Rechner den Xen-Kernel, der auf Ebene 0 läuft und somit über alle Zugriffsrechte eines normalen Betriebssystems verfügt. Der Kernel kann auf den kompletten Speicherbereich zugreifen, alle vorhandenen Register und E/A-Adressen nutzen und beliebige Prozessorbefehle aufrufen. Die von Xen auch als Domänen bezeichneten Ringe 1 und 2 sind - wie bereits erwähnt - für die modifizierten Gast-Betriebssysteme vorgesehen. Der mit den geringsten Rechten ausgestattete Ring 3 ist für Anwendungen reserviert, die unter einem der Gast-Betriebssysteme installiert werden.