Betriebssysteme · Institut für Systemarchitektur · Fakultät Informatik · TU Dresden



05. 02. 2010

Leichtgewichtige Virtualisierung auf Mikrokernsystemen


Steffen Liebergeld

TU Dresden

Verteidigung der Diplom-Arbeit

In den letzten Jahrzehnten sind Computer zu einem allgegenwärtigen Werkzeug geworden. Dabei hat sich herausgestellt, dass in vielen Fällen der Grund für Systemversagen bei den eingesetzten Betriebssystemen zu suchen ist. Gründe liegen in der fehlenden Fehlerisolation und unzureichendem Rechtemanagement. Diese Probleme können in bestehenden Systemen -unter Berücksichtigung der Rückwärtskompatibilität- nur schwer behoben werden. Eine neue Architektur, aufbauend auf Mikrokernen, stellt eine Lösung dar, ist jedoch inkompatibel zu bestehenden Anwendungen.

Um eine Unterstützung dennoch zu gewährleisten, bietet es sich an, den Kern eines Standardbetriebssystems zu verwenden. In der Vergangenheit wurden zu diesem Zweck Betriebssystem-Kerne auf Mikrokerne portiert. Solche Kernportierungen müssen auf Mikrokerndienste zurückgreifen, was inhärente Laufzeitkosten nach sich zieht. Hardwarevirtualisierungstechniken versprechen Lösungen mit besserer Performanz bei weniger oder keinen Kernanpassungen. Aktuell verfügbare Virtualisierungslösungen beschränken sich auf CPU- und Speichervirtualisierung, was die Frage der Gerätevirtualisierung offen lässt. Sind Anpassungen im Gastsystem möglich, bietet Paravirtualisierung eine Option, die sowohl die Implementierung vereinfacht wie auch den Gerätezugriff beschleunigt.

In diesem Vortrag werde ich eine Arbeit präsentieren, welche Gerätevirtualisierung in zwei Stufen umsetzt. Im ersten Schritt wurde ein Virtual Machine Monitor (VMM) entwickelt, der auf Rückwärtskompatibilität zugunsten einer einfachen Implementierung verzichtet. Diese Lösung hat eine geringe Komplexität und zeigt gute Performanz. Sie unterstützt mehrere Prozessoren und benötigt wenig Ressourcen. Im zweiten Schritt wurde mit Hilfe des paravirtualisierten Kerns ein komplexer VMM nutzbar gemacht, womit auch nicht modifizierte Betriebssysteme, wie zum Beispiel Windows, unterstützt werden.
Julian Stecklina, http://os.inf.tu-dresden.de/~jsteckli/
7. May 2012
· Copyright © 2001-2010 Operating Systems Group, TU Dresden | Impressum ·