Betriebssysteme 2025

Dozent

Roland Weber
IBM Entwicklungslabor Böblingen
rolweber (at) de.ibm.com

Tipps für mündliche Prüfungen

Ich beantworte gerne auch Fragen per eMail.

Vorlesungen

Alle Vorlesungen finden vor Ort
an der DHBW statt.

→ Themen pro Vorlesung

Aufgaben und Aufträge

Übungen

Aufgaben
Verständnis (9)
Klausurnah (24)
Lösungen
Anleitung IAD
K1

Einige der Übungen bearbeiten und besprechen wir in der Vorlesung. Die meisten sind jedoch zur selbstständigen Bearbeitung vorgesehen, alleine oder in kleinen Lerngruppen. Musterlösungen stelle ich nach und nach bereit, wenn die jeweiligen Themen drankommen. Ich rate dringend, die Übungen während des Semesters anzugehen. Wer erst kurz vor der Klausur mit dem Lernen anfängt, ist selbst schuld. Ihr seid gewarnt!

Die Übungen fallen in zwei Kategorien. V-Aufgaben dienen dem Verständnis eines Themas vor oder während der Vorlesung, oder zum Vertiefen des Stoffs in der Nachbereitung. K-Aufgaben eignen sich zur intensiven Klausurvorbereitung. Viele davon sind frühere Klausuraufgaben. Gegen Ende des Semesters stelle ich mindestens eine Probeklausur mit Musterlösung bereit.

Kleine Arbeitsaufträge während des Semesters bereiten Vorlesungen vor oder ergänzen deren Inhalte. Soweit nicht anders angegeben sind Arbeitsaufträge klausurrelevant, insbesondere wenn sie Recherchen oder Nachlesen erfordern.

Material

Präsentationen

  1. Einstimmung

Videos (2020)

Ein paar Begriffe habe ich seither geändert.
→ Kernobjekte, Abschnitt 7.3 und verstreut  13:21 min
→ Kernaktionen, Abschnitte 12.2+3  12:45 min
→ Umgebungswechsel, Abschnitt 16.2  13:51 min

Das Begleitbuch liegt in drei Fassungen vor:

  • A4 komplett dient als Referenz für Seitenangaben.
  • A5 randlos und ohne Seitennummern, ebenfalls komplett, ist für das Lesen auf Tablets gedacht.
  • A4 Auswahl ist meine Empfehlung zum Ausdrucken, wer das möchte.

Lehr- und Lernziele

Die Formulierungen orientieren sich an der Lernzieltaxonomie und Verbtabelle im alten Handbuch Lehre (PDF), Seiten 27-29.
Ich setze etwas andere Schwerpunkte als das Modul T3INF2005.2 im Modulhandbuch (PDF), Seite 26.

Systemarchitektur

Betriebssysteme stellen Laufzeitumgebungen für Programme bereit. Eine Laufzeitumgebung beinhaltet sowohl Resourcen wie Speicher und Rechenzeit, als auch Schnittstellen für Systemfunktionen wie Dateizugriffe. Die Teilnehmer unterscheiden ablaufende Programminstanzen von der Infrastruktur, d.h. dem Kern des Betriebssystems. Eine Instanz umfasst ein Programm und meist mehrere, dynamisch gebundene Bibliotheken. Die Infrastruktur stellt Resourcen und systemnahe Schnittstellen für alle Instanzen bereit. Anwendungsnahe Schnittstellen liegen in Bibliotheken.

Interaktionsmuster

Interaktionsmuster beschreiben, wie zwei oder mehr Prozesse (siehe unten) in verschiedenen Rollen miteinander arbeiten. Die Teilnehmer verstehen eine Auswahl von einfachen Grundmustern, die sie variieren und zu komplexeren Mustern zusammensetzen. Die Grundmuster sind: Client/Server, Erzeuger/Verbraucher, Reproduktion, Fließband, Pufferung, Team. Zur Darstellung dienen Interaktionsdiagramme.

Adressräume

Jede Programminstanz läuft in einem Adressraum ab, wo sie nur auf bestimmte Speicherbereiche zugreifen darf. Die Teilnehmer kennen den schematischen Aufbau von Adressräumen und ausführbaren Programmdateien. Sie verstehen, wie eine MMU (memory management unit) ungültige Speicherzugriffe unterbindet und erstellen vereinfachte Übersetzungstabellen für die MMU.

Prozesse

Prozesse erhalten Rechenzeit vom Betriebssystem, um Programmcode auszuführen. Die Teilnehmer begreifen das Prinzip der Prozessumschaltung. Sie kennen ein einfaches Prozessmodell mit sieben Zuständen, die zugehörigen Prozessmengen sowie die Rollen von Aufgreifstrategien und Prioritäten. Die Prozesszustände sind: Aktiv (Bereit + Rechnend), Blockiert, Inaktiv (+ Fertig), Nicht. Die Teilnehmer vergleichen dieses Modell mit dem Five State Process Model für Unix.

Interaktion

Interaktion verbindet Prozesse miteinander und mit ihrem Umfeld. Die Teilnehmer verstehen Zweck und Funktionsweise der systemnahen Synchronisation und Kommunikation mittels Kernobjekten. Auf Englisch bezeichnet man systemnahe Interaktion auch als IPC: inter-process communication. Die Teilnehmer kennen Datenströme als anwendungsnahen Mechanismus zur Kommunikation und zum Zugriff auf Dateien.

Kernoperationen

Der Kern wird von Instanzen aufgerufen oder reagiert auf Unterbrechungen. Die Teilnehmer verstehen, wie der Kern zwischen Prozessen umschaltet oder sie bei Bedarf blockiert in Wartemengen ablegt, um Operationen später zu beenden. Als Beispiele dienen die Operationen eines Semaphors, verschiedener anderer Synchronisationsobjekte sowie der Austausch von Nachrichten an Kanälen. Die Teilnehmer übertragen das Prinzip auf ähnliche Interaktionsmechanismen.

Dateisysteme

In Dateisystemen liegen Daten, deren Lebensdauer nicht an einen Programmlauf gebunden ist. Die Teilnehmer verstehen den Aufbau von Verzeichnisstrukturen und die Funktion von Verweisen (symbolic links, hard links). Sie kennen die Grundzüge der Organisation eines Dateisystems auf einem Massenspeicher. Sie wissen, wie eine Systemfunktion die Zugriffe aller Instanzen auf die angeschlossenen Dateisysteme ermöglicht und koordiniert.

Virtueller Speicher

Durch geschickten Einsatz von MMUs kann das Betriebssystem Daten dynamisch zwischen Hauptspeicher und Massenspeicher verschieben. Darauf basieren Dateizugriffe mittels MMIO (memory-mapped IO) und das Auslagern von Speicherinhalten (Paging). Die Teilnehmer verstehen die zugrunde liegenden Mechanismen. Sie kennen Grenzen für das Auslagern.

Links und Literatur