Betriebssysteme II
Es ist auf den ersten Blick ziemlich überraschend, wie viele
Neuentwicklungen von Betriebssystemen heute noch vorgenommen
werden. Bei genauerer Untersuchung stellt man fest, daß
hierfür oft sehr gute Gründe vorliegen: Spezialanwendungen -
vor allem im Bereich der eingebetteten Systeme - benötigen
maßgeschneiderte und optimierte Betriebssysteme, welche genau
die von der Anwendung geforderten Dienste ohne funktionalen Overhead
anbieten. Sicherheits-relevante Anwendungen mit langfristigen
Wartungsanforderungen machen weiterhing oft eine Eigenentwicklung von
Betriebssystem-Software erforderlich, um vollständigen Zugriff auf
den Quellcode zu haben und sich nicht von einem fremden Zulieferer
abhängig zu machen. Die Vorlesung wendet sich daher an Studierende,
die an folgenden Fragen interessiert sind:
- Wie werden Betriebssystemdienste tatsächlich implementiert?
- Wie sieht die Architektur eines modernen Betriebssystems aus?
- Wie kann man selber maßgeschneiderte Betriebssysteme für
Spezialanwendungen entwerfen und implementieren?
Um die Beantwortung dieser Fragen so konkret wie möglich zu
gestalten, nehmen wir uns das Linux-Betriebssystem vor. Dieses ist
seit Vorliegen der neuen Kernel-Version 2.0 mit einer akzeptablen
Architektur ausgestattet und ermöglicht uns, auf alle Quellen
kostenfrei zuzugreifen und ggf. auf dem eigenen PC zu
installieren. Wem die letztere Möglichkeit nicht offen steht, kann
für Linux-spezifische Übungen (etwa 1/3 der Aufgaben) die PCs der
Ebene 0 nutzen, die alle bereits mit Linux ausgestattet sind.
An dieser Stelle eine kritische Anmerkung von Niels, Markus und Ralf
zu den Inhalten der Vorlesung:
Parental Advisory
Aufgaben:
Literatur:
Als Hintergrundliteratur sind genau wie für Betriebssysteme I
die Bücher von Tanenbaum empfehlenswert:
[1] Tanenbaum: Moderne Betriebssysteme, Hanser 1994
[2] A. Tanenbaum: Operating Systems: Design and Implementation, Prentice Hall.
[3] A. Tanenbaum: Distributed Operating Systems, Prentice Hall 1995
Die Linux-Interna werden nach
[4] M. Beck et. al.: Linux-Kernel-Programmierung, Algorithmen und Strukturen
der Version 2.0, Addison-Wesley (1996?) vorgestellt.
[Beim Kauf dieses Buches bitte darauf achten, dass nicht versehentlich die
alte, sich auf den Kernel 1.2 beziehende Version geliefert wird.]
vorgestellt.
Unix-spezifische Literatur:
[5] M.J. Bach: The Design of the Unix Operating System, Prentice Hall 1986 (oder neuer)
[6] U. Vahalia: UNIX-Internals - The New Frontiers, Prentice Hall 1996
[7] B. Goodheart & J. Cox: The Magic Garden Explained --
The Internals of Unix System V Release 4 - An Open System Design,
Prentice Hall 1994
Linux Informationen aus dem www:
Links, die Markus Germeier gefunden hat:
Added Value:
Weitere ``Added Values'' und weitere Literaturangaben werden
wie gewohnt im Laufe der Vorlesung eingeführt.
agbs@informatik.uni-bremen.de,
letzte Änderung 14. April 98