Virtualbox, Vmware und Co.

Crashkurs: Wie funktionieren eigentlich virtuelle PCs?

Hardware-Zugriffe: Grenzen der Virtualisierung

Während Virtualisierungsumgebungen die Befehle des Gastbetriebssystems an CPUs und Speicher mit geringen Geschwindigkeitseinbußen übersetzen können, ist dies bei anderen Hardware-Komponenten nicht so einfach. Der direkte Hardware-Zugriff ist verwehrt, denn auf Geräte wie Soundkarten, ISDN-Karten, Netzwerkkarten, Controller und Chipsätze hat bereits das Host-System exklusiven Zugriff. Eine gleichzeitige, konkurrierende Verwendung durch ein weiteres Betriebssystem könnten Standardkomponenten gar nicht verarbeiten. Virtualisierungsumgebungen begnügen sich deshalb damit, per Software Geräte wie Chipsatz, Controller, Netzwerkkarte und Grafikchip zu emulieren. Lediglich die KVM (Kernel Virtual Machine) von Linux kann momentan PCI-Geräte direkt an virtuelle Maschinen weitergeben, sofern diese nicht auch schon das Host-System verwendet.

Moderne Prozessoren, hier ein Intel Core i7, unterstützen Virtualisierung. In den „Instructions“ zeigt das Tool CPU-Z daher die Erweiterung „VT-x“ an.
Moderne Prozessoren, hier ein Intel Core i7, unterstützen Virtualisierung. In den „Instructions“ zeigt das Tool CPU-Z daher die Erweiterung „VT-x“ an.

Einigen Virtualisierungsumgebungen wie Vmware Workstation und Virtualbox gelingt es, über ihre Treiber eine Schnittstelle zum physikalischen Grafikchip zu schaffen, wobei die Grafikleistung nicht für aufwendige Spiele reicht. Nur Microsofts Hyper-V für Server kann mit der Technik „RemoteFX“ den Grafikchip einer separaten Grafikkarte direkt für eine virtuelle Maschine verfügbar machen.

Virtualisierung mit und ohne Betriebssystem

Es gibt verschiedene Techniken, um Gastbetriebssysteme auf einem PC in virtuellen Umgebungen zu starten. Bei diesen Techniken unterscheidet man meist danach, auf welcher Ebene die Abstraktionsschicht angesiedelt ist, auf der die Virtualisierung vonstatten geht. Die unterschiedlichen Methoden liefern je nach angestrebtem Einsatzzweck, etwa auf Desktops, Servern und für den Zugriff über das Netzwerk, die beste Leistung bei niedrigem Verwaltungsaufwand.

Typ-2-Hypervisor:Setzt eine Virtualisierungsumgebung als Basis ein ausgewachsenes Betriebssystem voraus, dann spricht man von einem Typ-2-Hypervisor. Generell handelt es sich bei einem Hypervisor, auch „Virtual Machine Monitor“ genannt, um jene Verwaltungs-Software, die die Kontrolle über die virtuellen Maschine hat, diese starten und anhalten kann und entsprechende Ressourcen zuweist. Beispiele für den Typ 2 liefern beispielsweise die weit verbreiteten Virtualisierungs-Tools für den Desktop wie Vmware Player beziehungsweise Workstation (für Windows und Linux), Oracle Virtualbox (für Windows, Linux und Mac OS X) und auch Microsoft Virtual-PC (bis Windows 7).

Typ-1-Hypervisor: Läuft der Hypervisor direkt auf der Hardware und ersetzt dabei das Betriebssystem, handelt es sich um einen Typ- 1-Hypervisor. Diese Virtualisierungsumgebungen werden beim Einsatz auf Servern und in Rechenzentren auf Computern bevorzugt, die sowieso nur virtuelle Maschinen beherbergen sollen – dann allerdings gleich dutzendweise. Beispiele dafür sind Vmware ESX/ESXi, Oracle VM Server und Citrix Xenserver.

Virtualbox, hier unter Linux mit Windows-Gastsystem, ist ein typischer Hypervisor für den Desktop, der als Anwendung läuft und die Befehle des Gastbetriebssystems übersetzt.
Virtualbox, hier unter Linux mit Windows-Gastsystem, ist ein typischer Hypervisor für den Desktop, der als Anwendung läuft und die Befehle des Gastbetriebssystems übersetzt.

Mischformen:Hyper-V von Windows 8/8.1, 10 und von Microsofts Serverbetriebssystemen sowie die Technik KVM des Linux-Kernels sind Mischformen. Die Virtualisierungsfunktionen sind Teil des Betriebssystems oder werden wie bei Linux als Kernel-Modul geladen. Das Betriebssystem kann sich so selbst virtualisieren und mehrere unabhängige Instanzen starten.