Crashkurs: Wie funktionieren eigentlich virtuelle PCs?

Mit virtuellen Umgebungen (VMs) wie Hyper-V, Vmware, Virtualbox und andere Lösungen lassen sich mehrere Betriebssysteme gleichzeitig ausführen. So kommt das System ins System und man erhält etwa Test- und Entwicklungsumgebungen. [...]

PROZESSOREN VON AMD UND INTEL: RINGE REGELN DIE PRIVILEGIEN
Ganz gleich, welche Methode der Virtualisierung zum Einsatz kommt, eins ist allen gemeinsam: Einige Befehle, die das Gastsystem an die CPU sendet, müssen über die Virtualisierungsschicht abgefangen werden. Der Grund liegt im Design der x86-CPUs von Intel und AMD. Lediglich das zuerst gestartete Betriebssystem darf privilegierte CPU-Instruktionen verwenden, die später gestarteten Anwendungen dagegen nicht. Schließlich soll das Betriebssystem die Kontrolle darüber behalten, was Anwendungen anstellen. Der privilegierte Zugriff findet im „Ring 0“ der CPU statt, auch „Kernel-Mode“ genannt. Dieser Ring umfasst den direkten Zugriff auf Interrupts und Speicher.

Die internen Privilegien einer x86-CPU sind historisch bedingt in Ringe eingeteilt. Nur im Ring 0 (Kernel-Modus) darf ein Betriebssystem nach Belieben schalten und walten. (c) tecchannel.de

Die Ringe darüber, Ring 1, 2 und 3, gehören alle zum „User-Mode“. Betriebssystemtreiber dürfen zum Beispiel in Ring 1 und 2 arbeiten. Normale Programme im Betriebssystem arbeiten nur ab Ring 3. Ein Problem dieser historisch bedingten Prozessoreinteilung ist, dass ein Virtualisierer zwar als Programm im Ring 3 läuft, dort aber Gastbetriebssysteme ausführen muss. Dies ist allerdings nicht ohne Weiteres möglich, weil Betriebssysteme stets Code enthalten, der nur im Ring 0 funktioniert.

Die prozessornahen Assembler-Befehle „CLI“ (Clear Interrupts) und „STI“ (Set Interrupts) zur Interrupt-Steuerung laufen etwa in den höheren Ringen des User-Modes nicht und die CPU verweigert deren Ausführung. Da ein Betriebssystem wie Windows oder der Linux-Kernel in der Annahme programmiert ist, dass es auf Ring 0 läuft, funktioniert es außerhalb des Kernel-Modes überhaupt nicht.

DER HYPERVISOR ÜBERSETZT DIE JEWEILIGEN SYSTEMANFRAGEN
Damit die virtuellen Systeme trotzdem laufen, bedienen sich Virtualisierungsumgebungen eines Tricks: Jeder Befehl einer virtuellen Maschine wird vom Hypervisor analysiert und die Befehle werden bei Bedarf umgebaut, damit sie im Ring 3 ausgeführt werden. Frühe Virtualisierungsprogramme erledigten dies noch ausschließlich über Software und waren gut damit beschäftigt, das Gastsystem stabil zu halten, was auch nicht immer gelang. VMs in den Zeiten der Vmware Workstation 3.x waren langsam und ressourcenhungrig.

Mit aktuellen Hypervisoren stellen Geschwindigkeit und Stabilität kein Problem mehr dar – allerdings müssen die Software-Hersteller von Virtualisierungslösungen für neue Windows-Versionen immer wieder Updates bereitstellen, damit diese als Gast laufen. Auf einer alten Version von Virtualbox läuft zum Beispiel Windows 8/8.1 nicht zufriedenstellend. Das liegt daran, dass Betriebssysteme verschiedene Anpassungen verlangen, damit Befehle für den Ring 0 auch im Ring 3 laufen. Bei Virtualbox und Vmware müssen Sie daher immer den Typ des Gastsystems angeben, wenn Sie einen neuen virtuellen PC erstellen. Sie müssen etwa vorgeben, um welche Windows-Version es sich handelt und ob das System für die 32-Bit- oder 64-Bit-Plattform vorliegt. Nach diesen Angaben entscheidet der Hypervisor, welche Prozessorbefehle übersetzt werden müssen.


Mehr Artikel

Gregor Schmid, Projektcenterleiter bei Kumavision, über die Digitalisierung im Mittelstand und die Chancen durch Künstliche Intelligenz. (c) timeline/Rudi Handl
Interview

„Die Zukunft ist modular, flexibel und KI-gestützt“

Im Gespräch mit der ITWELT.at verdeutlicht Gregor Schmid, Projektcenterleiter bei Kumavision, wie sehr sich die Anforderungen an ERP-Systeme und die digitale Transformation in den letzten Jahren verändert haben und verweist dabei auf den Trend zu modularen Lösungen, die Bedeutung der Cloud und die Rolle von Künstlicher Intelligenz (KI) in der Unternehmenspraxis. […]

News

Richtlinien für sichere KI-Entwicklung

Die „Guidelines for Secure Development and Deployment of AI Systems“ von Kaspersky behandeln zentrale Aspekte der Entwicklung, Bereitstellung und des Betriebs von KI-Systemen, einschließlich Design, bewährter Sicherheitspraktiken und Integration, ohne sich auf die Entwicklung grundlegender Modelle zu fokussieren. […]

News

Datensilos blockieren Abwehrkräfte von generativer KI

Damit KI eine Rolle in der Cyberabwehr spielen kann, ist sie auf leicht zugängliche Echtzeitdaten angewiesen. Das heißt, die zunehmende Leistungsfähigkeit von GenAI kann nur dann wirksam werden, wenn die KI Zugriff auf einwandfreie, validierte, standardisierte und vor allem hochverfügbare Daten in allen Anwendungen und Systemen sowie für alle Nutzer hat. Dies setzt allerdings voraus, dass Unternehmen in der Lage sind, ihre Datensilos aufzulösen. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*