Virtualisierung von Betriebssystemen

VMware Architektur

Einleitung

Geschichte der Virtualisierung

Schon Ende der 50iger Jahre beschäftigte sich Christopher Strachey damit, die damals sehr wertvolle Rechenzeit optimal auszunutzen. Strachey erdachte die logische CPU auf der Programme, wie auf einer physikalischen CPU, gestartet werden können. Die logische CPU wird über einen Scheduler einer physikalischen CPU zugeordnet. Durch diese Überlegungen wurde er zum Vorreiter des "Multiprogramming". In den folgenden Jahren wurde das Prinzip Hardware zu virtualisieren häufig dazu verwendet bestehende Probleme zu beseitigen.
Beim ATLAS Computer, der Anfang der 60 Jahren entstand, wurde Speicher virtualisiert, um Kosten für Hauptspeicher zu sparen. Durch eine Zusammenarbeit von IBM und dem MIT entstand Mitte der 60iger Jahre die erste Virtuelle Maschine.
Es dauerte jedoch bis in die 80 Jahre hinein, bis das Potential von Virtualisierung erkannt wurde. Zu dieser Zeit entstanden eine Reihe von VM Produkte unter der Regie von IBM.
Bis Ende der 90iger Jahre ging man aufgrund von Hardwarebeschränkungen davon aus, dass nicht alle Hardwarearchitekturen virtualisierbar sind. Vor allem die Intelarchitektur bereitete Probleme. Als dann 1999 die Firma VMware Inc. durch ihr erstes Produkt die Machbarkeit der Virtualisierung von Intelarchitekturen bewies, musste in diesem Bereich umgedacht werden.

Was ist Virtualisierung von Betriebssystemen?

Virtualisierung von Betriebssystemen ist die gleichzeitige Nutzung von mehreren Betriebssystemen auf einer zur Verfügung gestellten Hardwareumgebung. Es gibt also in der Regel einen leistungsfähigen Computer, der als Basis für mehrere gleichzeitig ausgeführte Betriebssysteme dient.
Zur Virtualisierung von Betriebssystemen gibt es verschiedene Ansätze. Hier wären beispielsweise die Hardware Emulation, die Native Virtualisierung und die Paravirtualisierung zu nennen.
Bei der Hardware Emulation wird die komplette Hardware eines Computers simuliert und so auch die Ausführung von Betriebssystemen ermöglicht, die für andere Prozessoren konzipiert sind.
Die Native Virtualisierung, auch Hardware Virtualisierung genannt, stellt dem Gast-Betriebssystem nur Teilbereiche der physikalischen Hardware in Form von virtueller Hardware zur Verfügung. Diese virtuelle Hardware ist, in Zusammenarbeit mit physikalischen Komponenten, in der Lage einen kompletten PC nachzubilden und ein unverändertes Betriebssystem isoliert auszuführen.
Bei dieser Art der Virtualisierung ist es zwingend notwendig, dass das Gastsystem für den CPU Typ ausgelegt ist, der über die physikalische Hardware zur Verfügung steht.
Im Gegensatz zur Hardware Emulation und der Nativen Virtualisierung bietet die Paravirtualisierung nicht die gleiche, sondern nur eine ähnliche Schnittstelle an, wie die physikalische Hardware. Aus diesem Grund, müssen die Gast-Betriebssysteme modifiziert werden, um mit Paravirtualisierung zu arbeiten. Wesentlich bei dieser Architektur ist der Hypervisor, der die Scheduling-Aufgaben für die Ressourcen der "Virtuellen Maschinen" übernimmt.
Alle diese Virtualisierungsansätze arbeiten mit einer Indirektstufe, um eine Schnittstelle, zwischen den Gast-Betriebssystemen und dem Host-Betriebssystem oder der Hardware direkt, zu realisieren. Mit den verschiedenen Virtualisierungsansätzen sind natürlich verschiedene Vor- und Nachteile verbunden, auf die im Folgenden näher eingegangen wird.

Was ist VMware?

VMware Inc. ist einer der führenden Anbieter von Virtualisierungssoftware.
Das, seit 1998 existierende, Unternehmen bietet derzeit diverse Produkte an, durch die mehrere Betriebssysteme auf derselben physikalischen Hardware gleichzeitig ablaufen können. Hierzu wird virtuelle Maschinentechnologie der Mainframe-Klasse verwendet, die auf den Einsatz auf Computern mit Intelarchitekturen angepasst wurde. Der Einsatz der Produkte reicht von kleinen Testumgebungen bis hin zur Konsolidierung von kompletten IT-Infrastrukturen.

Architektur realer Systeme

Reale Systeme sind die häufigste Form des Auftretens von Computersystem. Diese Systeme bestehen aus der physikalischen Hardware, dem Mainboard, dem Prozessor (CPU), dem Hauptspeicher, Festplatten und div. Erweiterungskarten.
Um die Hardware initialisieren zu können, existiert in jedem System das Bios. Dies lädt beim Start des Systems Einstellungen und ermöglicht es dem Betriebssystem vordefinierte Schnittstellen zur Hardware zu benutzen. Das Betriebsystem greift über die Bios - Schnittstelle auf die Hardware zu und ist in der Lage diese zu verwalten. Das Betriebssystem schafft dadurch eine Umgebung in der die Ausführung von Anwendungssoftware ermöglicht wird.