Betriebssysteme (BS) im WS 2020/21
Neuigkeiten
19.01.2021: | Eine Zusammenfassung der Vorlesung sowie ein Ausblick wird am Mittwoch, den 10. Februar ab 12:15 Uhr (während der üblichen Sprechstundenzeit) als synchrone Veranstaltung (via BigBlueButton) durchgeführt. Dabei können natürlich nochmals Fragen zum gesamten Vorlesungsinhalt sowie zur Prüfung gestellt werden. |
16.12.2020: | Am Mittwoch, den 23. Dezember wird es aufgrund der absehbar geringen Nachfrage keine allgemeine Sprechstunde geben. Diese wird jedoch am Dienstag, den 5. Januar um 12:15 Uhr nachgeholt. Für konkrete Fragen stehen wir natürlich während der ganzen Bearbeitungszeit weiterhin via Mail und Chat zur Verfügung, bei Bedarf (oder komplexeren Problemen) können wir auch kurzfristig eine Videokonferenz einplanen. Euch ein frohes Fest, guten Rutsch und bleibt gesund! |
04.12.2020: | Bitte meldet euch zu der Prüfung auf meinCampus an und wählt einen Prüfungstermin via Waffel aus. |
26.10.2020: |
Da alle verfügbaren Plätze bei der Übungsanmeldung bereits belegt sind, wurde die Anmeldung geschlossen. Bitte schreibt bei Interesse eine Mail mit allen relevanten Daten – Name, Login und gewünschte Variante (OOStuBS oder MPStuBS) sowie optional die des gewünschten Gruppenpartners – an i4stubs@lists.cs.fau.de um auf die Warteliste gesetzt zu werden. Wir werden außerdem noch einmal unsere technischen und personellen Mittel reevaluieren und nach Möglichkeit weiteren Gruppen (von der Warteliste) die Teilnahme ermöglichen. |
20.10.2020: | Die Videos zum ersten Kapitel der Vorlesung sind nun ebenfalls online. |
17.10.2020: |
Die Anmeldung zu der Übung für OOStuBS oder MPStuBS ist ab Sonntag, den 25. Oktober über Waffel möglich. Voraussetzungen für die Teilnahme sowie weitere Details zum Ablauf des Übungsbetriebs werden im Video Organisation erklärt – bitte vor der Anmeldung anschauen! Weiterhin sind auch Einführungsvideos zu C++ und Git online, nach erfolgreicher Übungsanmeldung kann dazu als Fingerübung die (freiwillige) Aufgabe 0 bearbeitet werden. |
27.08.2020: | Eine Anmeldung zu den Übungen ist ab Mitte Oktober möglich. |
29.06.2020: |
BS findet in diesem Semester statt. Da im Wintersemester 2020/21 aufgrund der Corona Situation Präsenzveranstaltungen (aller voraussicht nach) nicht oder nur eingeschränkt möglich sein werden, wird der Vorlesungs- und Übungsbetrieb auf eine präsenzlose Onlineveranstaltung umgebaut. Weitere Details folgen in den nächsten Monaten. |
26.03.2020: | Eine vorläufige Version der Betriebssystem-Website zum WS 2020/21 ist online. |
Inhalt der Vorlesung
Ziel der Vorlesung ist die Vermittlung von konzeptionellen Grundlagen und wichtigen Techniken, die für den Bau eines Betriebssystems erforderlich sind. In den vorlesungsbegleitenden Übungen werden diese Kenntnisse praktisch angewendet, indem ein kleines PC-Betriebssystem in kleinen Arbeitsgruppen von Grund auf neu entwickelt wird. Um dies zu bewerkstelligen, sind fundierte Kenntnisse über Aufbau und Funktionsweise der PC-Hardware erforderlich, die ebenfalls in der Lehrveranstaltung vermittelt werden. Dabei werden gleichzeitig Grundlagen aus dem Betriebssystembereich wie Unterbrechungen, Synchronisation und Ablaufplanung, die aus früheren Veranstaltungen (wie Softwaresysteme I oder Systemprogrammierung I) weitgehend bekannt sein sollten, wiederholt und vertieft.
Weitere Informationen zur Vorlesung...
Inhalt der Übungen
Ziel der Übungen ist es, schrittweise ein eigenes kleines Betriebssystem (OOStuBS, Objektorientiertes Studenten-Betriebssystem, bzw. MPStuBS, MultiProzessorStudenten-Betriebssystem) für den PC zu entwickeln. Dafür werden Gruppen aus je zwei Studenten gebildet.
Weitere Informationen zu den Übungen...
Dozenten und Betreuer
Terminübersicht (Stundenplan)
Es werden auf dieser Webseite wöchentlich Videos zu Vorlesung und Übung veröffentlicht, für Rückfragen gibt es neben den Mailinglisten und Chat eine virtuelle Sprechstunde (Videokonferenz) am Mittwoch, ab 12:15 Uhr.
Die drei (optionalen) Zusatzseminare im Semester finden (zwecks Interaktivität) synchron im Zeitslot der Sprechstunde statt.
Für den Übungsbetrieb ist ein PC oder Laptop mit Internetzugang erforderlich.
Terminübersicht (Semesterplan)
Hier ist der geplante Ablauf der Veranstaltung im
Überblick dargestellt: Zu jeder Aufgabe gibt es jeweils eine
Übung, die Bearbeitungszeit beträgt zwei Wochen.
Vor dem Semesterbeginn wird eine (optionale) Übung angeboten, welche Grundlagen (C++ und git) erklärt.
Die Seminare vertiefen Inhalte über den Vorlesungsumfang hinaus, sind jedoch optional.
KW | Mo | Di | Mi | Do | Fr | Themen |
---|---|---|---|---|---|---|
44 | 26.10 | 27.10 | 28.10 | 29.10 | 30.10 | Organisation und Einleitung Einführung in C++, git und die Arbeitsumgebung |
A0: C++ Streams (freiwillig, zur Vorbereitung) | ||||||
45 | 02.11 | 03.11 | 04.11 | 05.11 | 06.11 | Einstieg in die Betriebssystementwicklung Ausgabefunktionen und Tastaturansteuerung |
A1: Ein/Ausgabe | Intro, Q&A | |||||
46 | 09.11 | 10.11 | 11.11 | 12.11 | 13.11 | Unterbrechungen - Hardware (Ur)Laden des x86er |
Seminar | Abgabe A1 | |||||
47 | 16.11 | 17.11 | 18.11 | 19.11 | 20.11 | Unterbrechungen - Software Interruptbehandlung für StuBS |
A2: Unterbrechungen | Q&A | |||||
48 | 23.11 | 24.11 | 25.11 | 26.11 | 27.11 | Unterbrechungen - SoftIRQ Fehlersuche mit dem GDB |
Seminar | Abgabe A2 | |||||
49 | 30.11 | 01.12 | 02.12 | 03.12 | 04.12 | Unterbrechungen - Synchronisation Interruptsynchronisation mit dem Pro-/Epilogmodell |
A3: Pro-/Epilog | Q&A | |||||
50 | 07.12 | 08.12 | 09.12 | 10.12 | 11.12 | IA-32: Die 32-Bit-Intel-Architektur Programmierung in Assembler |
Seminar | Abgabe A3 | |||||
51 | 14.12 | 15.12 | 16.12 | 17.12 | 18.12 | Koroutinen und Programmfäden Threadumschaltung |
A4: Kontextwechsel | Q&A | |||||
52 | 21.12 | 22.12 | 23.12 | 24.12 | 25.12 | |
Vorlesungsfrei | ||||||
53 | 28.12 | 29.12 | 30.12 | 31.12 | 01.12 | |
Vorlesungsfrei | ||||||
01 | 04.01 | 05.01 | 06.01 | 07.01 | 08.01 | |
Q&A | Abgabe A4 | |||||
02 | 11.01 | 12.01 | 13.01 | 14.01 | 15.01 | Scheduling Zeitscheibenscheduling für StuBS |
A5: Zeitscheiben | Q&A | |||||
03 | 18.01 | 19.01 | 20.01 | 21.01 | 22.01 | Betriebssystem-Architekturen |
Q&A | Abgabe A5 | |||||
04 | 25.01 | 26.01 | 27.01 | 28.01 | 29.01 | Fadensynchronisation Ereignisbearbeitung und Synchronisation |
A6: Synchronisation | Q&A | |||||
05 | 01.02 | 02.02 | 03.02 | 04.02 | 05.02 | Gerätetreiber |
Q&A | Abgabe A6 | |||||
06 | 08.02 | 09.02 | 10.02 | 11.02 | 12.02 | Interprozesskommunikation, Zusammenfassung und Ausblick Eine Anwendung für StuBS |
A7: Anwendung | Q&A, Outro | (freiwillig) |