Friedrich-Alexander-Universität UnivisSuche FAU-Logo
Techn. Fakultät Willkommen am Department Informatik FAU-Logo
Logo I4
Lehrstuhl für Informatik 4
Softwaresysteme I
 
  Vorlesung
  Folien
  Übungen
  Evaluation
  Scheine, Prüfungen
     Ergebnisse
  Forum
Department Informatik  >  Informatik 4  >  Lehre  >  SS 2006  >  SOS 1  >  Vorlesungsüberblick

Softwaresysteme I - SS 2006

Vorlesungsüberblick

Die Veranstaltung SOSi ist die erste von drei Lehrveranstaltungen des sich über drei Semester erstreckenden Blocks "Softwaresysteme" (SOS). Gegeben wird eine Einführung in das "Programmieren im Großen" mit der Sprache C, verbunden mit der Vermittlung von grundlegenden Techniken der (imperativen) Systemprogrammierung am Beispiel von Betriebssystemen. In SOSii erfolgt ein Sprach- und Paradigmenwechsel auf C++, sowie die Ausrichtung der (objektorientierten) Systemprogrammierung auf Datenbanksysteme. Insbesondere im Rahmen der praktischen Übungen zu beiden Veranstaltungen wird das Kennenlernen der bei der Entwicklung großer Softwaresysteme auftretenden Schwierigkeiten und Herausforderungen einen Schwerpunkt bilden. Das damit erlangte Problembewusstsein zu dem gesamten Themenkomplex bildet die Basis und darüber hinaus gerade auch die Motivation für die in SOSiii behandelten grundlegenden Methoden und Konzepte der Softwaretechnik.

Die Vorlesung behandelt Betriebssysteme auf funktionaler wie auch (Software-) struktureller Ebene. Der "klassische" Lehrstoff über Betriebssystemfunktionen wird am Beispiel eines logischen, schichtenstrukturierten Systementwurfs vermittelt. Dabei steht der gesamtheitliche Zusammenhang zwischen den verschiedenen Funktionen im Vordergrund.

Der Lehrstoff gliedert sich auf in drei Hauptteile. Der erste Teil ist von einführendem Charakter und gibt zunächst eine kurze Motivation gefolgt von einem etwas längeren geschichtlichen Rückblick über die Entwicklung von Betriebssystemen. Im zweiten Teil werden die typischen, zentralen Betriebssystemabstraktionen (Adressraum, Speicher, Datei und Prozess) aus Benutzersicht, d. h., "von oben" und am Beispiel der UNIX-Systemschnittstelle diskutiert. Abschluss bildet ein kurzer Abstecher in den modularen, hierarchischen Entwurf von Betriebssystemen. Hier wird die logische Struktur eines Betriebssystems entwickelt, dessen Funktionen im weiteren Verlauf des sich anschließenden dritten Teils genauer betrachtet werden sollen. In eben diesen dritten Teil werden die Konzepte, Techniken und Funktionen im Detail erklärt, die zur Implementierung der eingangs erwähnten Basisabstraktionen von Betriebssystemen erforderlich sind. Im einzelnen behandelt werden in dem Kontext die folgenden Themen:

  • Speichervergabe, Adressraumabbildung
  • Prozessumschaltung, -einplaunng und -verwaltung
  • Unterbrechungssteuerung, Koordination
  • Ein-/Ausgabe, Dateiverwaltung
  • Ein-/Auslagerung, Programmverwaltung
  • Zugriffskontrolle, Systemaufrufe
Im Vordergrund stehen Betriebssystemfunktionen für Einprozessorsysteme. Spezielle Fragestellungen zu Mehrprozessorsystemen (auf Basis gemeinsamen Speichers) werden nur am Rande und in Bezug auf Funktionen zur Koordinierung nebenläufiger Programme behandelt. In ähnlicher Weise werden Fragen zur Echtzeitverarbeitung ansatzweise nur in Bezug auf die Prozesseinplaung erörtert.

Vorlesungsskript

Zur Verfügung gestellt werden die in der Vorlesung eingesetzten Folien als Postscript- bzw. PDF-Dokumente zum Selbstausdruck. Als Alternative sind Folienkopien auf Basis von Gutscheinen erhältlich, die in den ersten Übungen erworben werden können. Die Gutscheine kosten 5,00 EUR. Folienausdrucke werden dann jeweils vor der Vorlesung ausgegeben.

Vertiefende Literatur

  • A. Silberschatz, P. B. Galvin, G. Gagne. Operating Systems Concepts. John Wiley & Sons, 2001.
  • R. W. Stevens. Advanced Programming in the UNIX Environment. Addison-Wesley, 1992.
  • A. S. Tanenbaum, A. S. Woodhull. Operating Systems: Design And Implementation. Prentice-Hall, 1997.
  • A. S. Tanenbaum. Structured Computer Organization. Prentice-Hall, 1999.
  Impressum Stand: 2004-04-15 15:37