Zum Inhalt springenZur Suche springen

Betriebssysteme und Systemprogrammierung

Aktuelles

Zeitplanung für die 2. Klausur

Alle Materialien (inkl. Links zu den Videos) finden Sie >>> hier <<<

1. Klausur: 17.02.2023, 08:30 - 14 Uhr, 25.41.U1.22; 25.41.00,41; 25.41.00.43,

2. Klausur: 22.03.2023, 08:30 - 14 Uhr, 25.41.U1.22; 25.41.00,41; 25.41.00.43,

Dozent
Prof. Dr. Michael Schöttner

Studiengang
Bachelor-Studiengang Informatik

Materialien
Finden Sie hier.

Leistungspunkte
10 LP (Arbeitsaufwand 300 Stunden; Kontaktzeit 90 Stunden; Selbststudium 210 Stunden)

Lehrveranstaltungen

  • Vorlesung „Betriebssysteme und Systemprogrammierung“, 4 SWS, Mi. 10:30 - 12 Uhr, HS 5M  + Do. 10:30 - 12 Uhr, HS 5G
  • Übungen, Fr. 08:30 - 10 Uhr, HS 5M

Inhalte

  • C Programmierung
  • Bibliotheken, Binder und Lader
  • Prozesse und Threads
  • Scheduling: verschiedene Verfahren (Multilevel, Feedback, Echtzeit), Fallstudien: Linux, Windows, ...
  • Synchronisierung: Mutex, Semaphore, Verklemmungen, sperrfreie Synchronisierung
  • Hauptspeicher: Heap, Stack, Speicherverwaltung, Garbage Collection
  • Virtueller Speicher: ein und mehrstufig, invertierte Seitentabellen, Auslagerungsstrategien, Speicherverwaltung in Linux
  • Sekundärspeicher: Aufbau einer Festplatte/SSD, Partitionen, Speicherverwaltung
  • Dateisysteme: FAT, UNIX, ext4, NTFS (mit Journaling)
  • Interprozesskommunikation: Signale, Message Queue, Pipes, Shared-Memory, Sockets
  • Ein- und Ausgabe: Interrupts, E-/A-Software, Linux Kernel Module und Gerätetreiber
  • Sicherheit: Zugriffskontrolle, HW-Schutz, Angriff durch Pufferüberlauf, Meltdown, Address Space Layout Randomization, Kernel Page Table Isolation
  • Architekturen: Monolithen, Mikrokerne, virtuelle Maschinen, Client/Server

Lernergebnisse/Kompetenzen

Nach erfolgreicher Teilnahme an den Veranstaltungen dieses Moduls können die Studierenden:

  • das Zusammenspiel von Betriebssystem-Kern, Treiber und Hardware in eigenen Worten beschreiben
  • Betriebssystemkonzepte in eigenen Worten erklären und miteinander vergleichen
  • Systemprogramme in der Sprache C auf Basis der Systemaufrufschnittstelle UNIX entwickeln
  • einfache parallele Programme mit mehreren Threads und geeigneten Synchronisierungslösungen konzipieren und programmieren
  • Sicherheitsprobleme und Gegenmaßnahmen durch das Betriebssystem und den Hardwareschutz (am Beispiel der x86 Architektur) erklären

Literatur

  • Andrew S. Tanenbaum: „Modern Operating Systems”, 4. Auflage, Prentice Hall, 2014.
  • W. Stallings, "Operating Systems: Internals and Design Principles", Prentice Hall, 2017.

Verwendtbarkeit des Moduls

  • Wahlbereich Bachelor-Studiengang PO 2021
  • Wahlpflicht- und Schwerpunktbereich Bachelor-Studiengang PO 2013 und PO 2016
  • Individuelle Ergänzung im Master-Studiengang Informatik
  • Anwendungsfach im Bachelor-Studiengang Mathematik und Anwendungsgebiete
  • Nebenfach im Bachelor-Studiengang Physik
  • Nebenfach im Bachelor-Studiengang Medizinische Physik

Teilnahmevoraussetzungen

  • Inhalte der Programmierung und Rechnerarchitektur

Voraussetzungen für die Vergabe von Leistungspunkten

  • Erfolgreiche Teilnahme an der Prüfung am Ende der Veranstaltung.
  • Die Klausur besteht aus zwei Teilen. 50% praktische Programmieraufgaben am PC und 50% Aufgaben auf Papier

Häufigkeit des Angebots, modulare Schiene
Jedes Wintersemester

Modulbeauftragte und hauptamtliche Lehrende
Prof. Dr. Michael Schöttner

Verantwortlichkeit: