191.002 Betriebssysteme
Diese Lehrveranstaltung ist in allen zugeordneten Curricula Teil der STEOP.
Diese Lehrveranstaltung ist in mindestens einem zugeordneten Curriculum Teil der STEOP.

2023W, VU, 4.0h, 6.0EC
TUWELLectureTube

Merkmale

  • Semesterwochenstunden: 4.0
  • ECTS: 6.0
  • Typ: VU Vorlesung mit Übung
  • LectureTube Lehrveranstaltung
  • Format der Abhaltung: Hybrid

Lernergebnisse

Nach positiver Absolvierung der Lehrveranstaltung sind Studierende in der Lage, Aufbau und Funktionsweise von Computersystemen, sowie die Rolle und Aufgaben von Betriebssystemen bei der Verwaltung der Ressourcen von Computersystemen (Rechenzeit, Speicher, Dateien, I/O-Geräte) zu beschreiben, Designentscheidungen für das Management von Systemressourcen zu beurteilen, Mechanismen zur Koordination und Synchronisation paralleler Prozesse anzuwenden und Mechanismen des Zugriffsschutzes zu erläutern.

Weiters sind die Absolventen der Lehrveranstaltung in der Lage, unter Einhaltung von verbreiteten Programmierkonventionen und -richtlinien Programme in der Systemprogrammiersprache C zu entwickeln, welche Interprozess-Kommunikation und -Synchronisation unter Ausnutzung der von einem UNIX-System bereitgestellte Resourcen realisieren können.

Inhalt der Lehrveranstaltung

  • Grundkonzepte Betriebssysteme
    Definition und Entwicklungsgeschichte
    zentrale Abstraktionen und Mechanismen
    Betriebssystemarchitekturen
  • Prozesse, Threads und Scheduling
    Prozesse, Prozesszustände
    Datenstrukturen und Mechanismen zur Prozessverwaltung
    Threads, Multithreading
    Scheduling und Dispatching (Ziele und Verfahren)
  • Prozesssynchronisation und Deadlock
    Mutual Exclusion und Bedingungsynchronisation
    Synchronisationsmechanismen und Basiskonstrukte (Dekker Algorithmus, Test and Set, Spinlocks), Semaphore, Sequencer und Eventcounts, Monitor, Nachrichten und Synchronisation
    Synchronisationsaufgaben: Producer-Consumer, Reader-Writer, Dining Philosophers
    Deadlock: Voraussetzungen, Erkennung, Vermeidung
  • Speicherverwaltung
    Speicheraufteilung, Relocation
    Segmentierung und Paging
    Virtual Memory Management (Prinzipien, Adressierung und Hardwareunterstützung, Seitenaustausch, Protection und Sharing)
  • Ein-/Ausgabe und Disk Management
    Devices und deren Characteristika
    Ablauf von I/O
    Operationen, Treiber, Pufferung
    Festplatten: Zugriffe und Organisation
    Filesysteme: Operationen, Stuktur und Organisation
  • Networking
    Einführung in Netzwerke und Protokolle
    Betriebssystem und Netzwerkkommunikation
  • Security und Protection
    Bedrohungsszenarien und Sicherheitsmaßnahmen
    Sicheres Design
    Zugriffsschutz, Authentifizierung, Rechtesysteme
    Verschlüsselung (Einführung)
  • Programmierung in der Systemprogrammiersprache C (incl. Programmierkonventionen und Richtlinien)
  • Betriebssystemprogrammierung und Programmierumgebungen (GNU/Linux)
  • Synchronisation paralleler Prozesse und Interprozesskommunikation
  • Signale und Signalbehandlung

Methoden

Die genannten Inhalte werden in der Vorlesung präsentiert und mit Beispielen illustriert. Ausgewählte Problemstellungen werden in der Systemprogrammiersprache C unter UNIX (Linux) programmiert.

Prüfungsmodus

Prüfungsimmanent

Weitere Informationen

Alle relevanten Informationen zur Lehrveranstaltung werden in der Vorbesprechung am 3. Oktober, ab 13:00 c.t. bekanntgegeben!

Studierende, die die VO-Prüfung zur LVA 182.711 nach dem alten Studienplan absolviert haben, aber die Übung noch nicht gemacht haben, können den Übungsteil im Rahmen dieser LVA (191.002) noch absolvieren. Bitte beachten Sie die Termine für die Anmeldung in TUWEL. 

Studierende, die die Übung 182.709 absolviert haben, aber noch eine VO-Prüfung zur LVA 182.711 benötigen, melden sich bitte auf der TISS-Seite der LVA 182.737 zu einem mündlichen Prügungstermin an. Nach absolvierter Prüfung wird ein Zeugnis für die VO 182.711 ausgestellt.

Diese Lehrveranstaltung wird ausschließlich im Wintersemester angeboten.

ECTS Breakdown: 6 ECTS = 150 Stunden

Zeit (h) Tätigkeit
60 Vorlesungsbesuch (Betriebssysteme, Einführung C, Unix, Beispiele), incl. Nachbereitung und Prüfungsvorbereitung
82,5 Programmierbeispiele
1,5 Abgabegespräche (3 x 0,5h)
6 Tests (3 x 2h)

Alle E-Mails zu organisatorischen Fragen richten Sie bitte an lva-betriebssysteme@tuwien.ac.at

Vortragende Personen

Institut

LVA Termine

TagZeitDatumOrtBeschreibung
Di.13:00 - 15:0003.10.2023 - 23.01.2024Informatikhörsaal - ARCH-INF Lecture
Di.15:00 - 17:0003.10.2023 - 05.12.2023Informatikhörsaal - ARCH-INF Übung
Do.15:00 - 17:0005.10.2023 - 19.10.2023Informatikhörsaal - ARCH-INF Übung
Mo.12:00 - 20:0009.10.2023InfLab Frogger Einführungstutorial
Mo.12:00 - 20:0009.10.2023InfLab Q*bert Einführungstutorial
Di.08:00 - 13:0010.10.2023InfLab Frogger Einführungstutorial
Di.08:00 - 13:0010.10.2023InfLab Q*bert Einführungstutorial
Do.08:00 - 15:0012.10.2023InfLab Frogger Einführungstutorial
Do.08:00 - 15:0012.10.2023InfLab Q*bert Einführungstutorial
Do.16:00 - 17:0012.10.2023InfLab Frogger Einführungstutorial
Fr.10:00 - 11:0013.10.2023InfLab Frogger Einführungstutorial
Di.07:00 - 13:0024.10.2023 - 09.01.2024InfLab Frogger Lab Hours
Di.07:00 - 13:0024.10.2023 - 09.01.2024InfLab Q*bert Lab Hours
Di.18:00 - 20:0024.10.2023 - 09.01.2024InfLab Q*bert Lab Hours
Di.18:00 - 20:0024.10.2023 - 09.01.2024InfLab Frogger Lab Hours
Do.08:00 - 20:0009.11.2023 - 11.01.2024InfLab Frogger Lab Hours
08:00 - 20:0014.11.2023 - 24.11.2023InfLab Pong Abgabegespräch 1
Di.13:00 - 16:0014.11.2023 - 21.11.2023InfLab Frogger Abgabegespräch 1
Di.13:00 - 16:0014.11.2023 - 21.11.2023InfLab Q*bert Abgabegespräch 1
Do.08:00 - 20:0016.11.2023 - 23.11.2023InfLab Q*bert Abgabegespräch 1
Do.20:00 - 21:0016.11.2023InfLab Q*bert Abgabegespräch 1
Fr.08:00 - 20:0017.11.2023 - 24.11.2023InfLab Q*bert Abgabegespräch 1
Fr.08:00 - 20:0017.11.2023 - 24.11.2023InfLab Frogger Abgabegespräch 1
Mo.08:00 - 10:0020.11.2023InfLab Frogger Abgabegespräch 1
Mo.08:00 - 12:0020.11.2023InfLab Q*bert Abgabegespräch 1
Mo.16:00 - 18:0020.11.2023InfLab Q*bert Abgabegespräch 1
Mi.08:00 - 10:0022.11.2023InfLab Q*bert Abgabegespräch 1
Mi.14:00 - 16:0022.11.2023InfLab Q*bert Abgabegespräch 1
08:00 - 20:0012.12.2023 - 14.12.2023InfLab Pong Abgabegespräch 2
Di.13:00 - 16:0012.12.2023InfLab Frogger Abgabegespräch 2
Di.13:00 - 16:0012.12.2023InfLab Q*bert Abgabegespräch 2
Do.08:00 - 20:0014.12.2023InfLab Q*bert Abgabegespräch 2
Mo.08:00 - 10:0018.12.2023InfLab Q*bert Abgabegespräch 2
Mo.08:00 - 10:0018.12.2023InfLab Frogger Abgabegespräch 2
08:00 - 20:0018.12.2023 - 21.12.2023InfLab Pong Abgabegespräch 2
Di.13:00 - 16:0019.12.2023InfLab Q*bert Abgabegespräch 2
Di.13:00 - 16:0019.12.2023InfLab Frogger Abgabegespräch 2
Do.08:00 - 20:0021.12.2023InfLab Q*bert Abgabegespräch 2
Di.08:00 - 16:0016.01.2024InfLab Frogger Abgabegespräch 3
Di.08:00 - 16:0016.01.2024InfLab Q*bert Abgabegespräch 3
Di.18:00 - 20:0016.01.2024InfLab Frogger Abgabegespräch 3
Di.18:00 - 20:0016.01.2024InfLab Q*bert Abgabegespräch 3
08:00 - 20:0018.01.2024 - 19.01.2024InfLab Frogger Abgabegespräch 3
08:00 - 20:0018.01.2024 - 19.01.2024InfLab Q*bert Abgabegespräch 3
08:00 - 20:0018.01.2024 - 23.01.2024InfLab Pong Abgabegespräch 3
Mo.08:00 - 11:0022.01.2024InfLab Frogger Abgabegespräch 3
Mo.08:00 - 20:0022.01.2024InfLab Q*bert Abgabegespräch 3
Mo.14:00 - 20:0022.01.2024InfLab Frogger Abgabegespräch 3
Di.08:00 - 16:0023.01.2024InfLab Frogger Abgabegespräch 3
Di.08:00 - 16:0023.01.2024InfLab Q*bert Abgabegespräch 3
Do.13:30 - 15:3008.02.2024InfLab Frogger 2. Programmiertest
Betriebssysteme - Einzeltermine
TagDatumZeitOrtBeschreibung
Di.03.10.202313:00 - 15:00Informatikhörsaal - ARCH-INF Lecture
Di.03.10.202315:00 - 17:00Informatikhörsaal - ARCH-INF Übung
Do.05.10.202315:00 - 17:00Informatikhörsaal - ARCH-INF Übung
Mo.09.10.202312:00 - 20:00InfLab Frogger Einführungstutorial
Mo.09.10.202312:00 - 20:00InfLab Q*bert Einführungstutorial
Di.10.10.202308:00 - 13:00InfLab Frogger Einführungstutorial
Di.10.10.202308:00 - 13:00InfLab Q*bert Einführungstutorial
Di.10.10.202313:00 - 15:00Informatikhörsaal - ARCH-INF Lecture
Di.10.10.202315:00 - 17:00Informatikhörsaal - ARCH-INF Übung
Do.12.10.202308:00 - 15:00InfLab Frogger Einführungstutorial
Do.12.10.202308:00 - 15:00InfLab Q*bert Einführungstutorial
Do.12.10.202315:00 - 17:00Informatikhörsaal - ARCH-INF Übung
Do.12.10.202316:00 - 17:00InfLab Frogger Einführungstutorial
Fr.13.10.202310:00 - 11:00InfLab Frogger Einführungstutorial
Di.17.10.202313:00 - 15:00Informatikhörsaal - ARCH-INF Lecture
Di.17.10.202315:00 - 17:00Informatikhörsaal - ARCH-INF Übung
Do.19.10.202315:00 - 17:00Informatikhörsaal - ARCH-INF Übung
Di.24.10.202307:00 - 13:00InfLab Frogger Lab Hours
Di.24.10.202307:00 - 13:00InfLab Q*bert Lab Hours
Di.24.10.202313:00 - 15:00Informatikhörsaal - ARCH-INF Lecture

Leistungsnachweis

Im Rahmen der LVA sind 3 Programmierbeispiele aus dem Bereich der Systemprogrammierung eigenständig zu lösen sowie 2 Programmiertests und ein schriftlicher Test zu absolvieren. Die Leistungsbeurteilung erfolgt auf Grund der Testergebnisse und der Bewertung der abgegebenen praktischen Übungsbeispiele (Abgabegespräch).

Abgabe der Beispiele und Anmeldung zu den Tests/Quiz in TUWEL.

LVA-Anmeldung

Von Bis Abmeldung bis
11.09.2023 12:00 08.10.2023 23:59 08.10.2023 23:59

Curricula

StudienkennzahlVerbindlichkeitSemesterAnm.Bed.Info
033 521 Informatik Pflichtfach3. SemesterSTEOP
Lehrveranstaltung erfordert die Erfüllung der Studieneingangs- und Orientierungsphase STEOP
033 526 Wirtschaftsinformatik Gebundenes WahlfachSTEOP
Lehrveranstaltung erfordert die Erfüllung der Studieneingangs- und Orientierungsphase STEOP
033 533 Medizinische Informatik Gebundenes WahlfachSTEOP
Lehrveranstaltung erfordert die Erfüllung der Studieneingangs- und Orientierungsphase STEOP
033 534 Software & Information Engineering Pflichtfach3. SemesterSTEOP
Lehrveranstaltung erfordert die Erfüllung der Studieneingangs- und Orientierungsphase STEOP
033 535 Technische Informatik Pflichtfach3. SemesterSTEOP
Lehrveranstaltung erfordert die Erfüllung der Studieneingangs- und Orientierungsphase STEOP

Literatur

Es wird kein Skriptum zur Lehrveranstaltung angeboten.

Vorkenntnisse

Kenntnisse der Programmierung in einer Programmiersprache und der systematischen Programmerstellung und Evaluierung.
Analyse komplexer Zusammenhänge und Wechselwirkungen, Strukturieren und Entwerfen von modularen, interagierenden Systemen.

Sprache

Deutsch