Text in english

Virtuelle Maschinen

Wie man ohne Schraubenzieher aus einem Rechner drei machen kann

Kurs nur in Deutsch

Semesterwochenstunden:

2

Leistungspunkte:

2,5

Vorkenntnisse:

Rechnersysteme; unbedingt erforderlich: bestandene Prüfung in "Betriebssysteme"

Veranstaltungstyp:

Seminar

Semesterturnus:

Wintersemester

Arbeitsaufwand:

75 Stunden, davon:
30 Stunden Präsenzzeit,
45 Stunden für Vor- und Nachbereitung des Lehrstoffs, Vorbereitung des Seminarvortrags und schriftliche Ausarbeitung.

Beitrag zu den Zielen des Studiengangs:

Vermittlung von Spezialkenntnissen im Fachgebiet Betriebssysteme, die für vielfältige Gebiete der Informatik nützlich sind.

Lernziel:

Analyse der architektonischen Voraussetzungen, Vergleich verschiedener Typen und Implementierungsformen von virtuellen Maschinen und Fähigkeit, das Einsatzpotential von virtuellen Maschinen zu beurteilen.

Schlüsselqualifikationen:

Analyse und Klassifikation von Problemen, kreatives Problemlösen, Präsentationskompetenz

Lehrinhalte:

Mit Virtualisierung im hier verwendeten Sinne ist die Replizierung (Vervielfältigung) realer Hardware gemeint. D. h., aus einem Rechner werden mittels einer Software-Schicht virtuell (d. h. scheinbar) mehrere Rechner ("virtuelle Maschinen") gemacht, und in jeder dieser virtuellen Maschinen kann zur selben Zeit ein eigenes Betriebssystem ablaufen, isoliert von allen anderen.

Diese Technik ist seit ca. 1965 bekannt, als sie zunächst für IBM-Großrechner entwickelt wurde, und sie ist aus verschiedenen Gründen  zu neuer Blüte gekommen, da es dafür viele Anwendungsmöglichkeiten sowohl auf dem Desktop als auch im Server-Bereich sowie in eingebetteten Systemen gibt.

In diesem Seminar sollen abseits des Marketingrummels die technischen Grundlagen aus den Bereichen Prozessorarchitektur und Betriebssysteme erarbeitet werden. Ausgangspunkt ist die immer noch aktuelle Arbeit von Popek und Goldberg, in der Bedingungen für die effiziente Virtualisierbarkeit einer Prozessorarchitektur angegeben wurden. Da diese Bedingungen in der klassischen x86-Architektur von Intel und AMD nicht erfüllt waren, mussten für die Implementierung virtueller Maschinen Umgehungsmöglichkeiten gefunden werden, die auch behandelt werden. Inzwischen haben Intel und AMD jeweils eigene Virtualisierungserweiterungen der x86-Architektur entwickelt, die den Popek/Goldberg-Bedingungen genügen und die die Implementierung effizienter virtueller Maschinen vereinfachen.

Nach einer kurzen Vorlesungseinführung in das Thema werden in Vorträgen die historische Entwicklung, die technischen Grundlagen und auch  eine Auswahl aus der laufend anwachsenden Menge von aktuellen Virtualisierungssystemen beleuchtet, wobei bei letzteren der Schwerpunkt auf die Varianten der methodischen Vorgehensweise im Zusammenhang mit dem jeweiligen Einsatzgebiet gelegt wird.


Stichwörter zum Inhalt:
Virtuelle Maschine, Virtualisierungssystem, Popek/Goldberg-Bedingungen

Literatur:

  • POPEK, G. J. ; GOLDBERG, R. P.: Formal Requirements for Virtualizable Third Generation Architectures.
    In: Communications of the ACM (1974).
  • ROBIN, J. S. ; IRVINE, C. E.: Analysis of the Intel Pentium's ability to Support a Secure Virtual Machine Monitor.
    In: Proceedings of the 9th Usenix Symposium (2000).
  • ADAMS, K. ; AGESEN, O. : A comparison of software and hardware techniques for x86 virtualization.
    In: ASPLOS-XII: Proceedings of the 12th international conference on Architectural support for programming languages and operating systems. New York, NY, USA : ACM Press, 2006.

Bemerkungen:

Vorausgesetzt werden Kenntnisse aus den Veranstaltungen Betriebssysteme und Rechnersysteme

Leistungsnachweis:

Referat (max. 45 min) und Studienarbeit (10 - 15 Seiten, Ausarbeitung des Referats); Gewichtung je 50 %. Anwesenheitspflicht während der Seminarvorträge

Modulverantwortliche/r:

Prof. Dr. Kern





TH Nürnberg
Fakultät Informatik
Webmaster-IN



Root- Zertifikat

© 2019 Fakultät Informatik