Moin, moin liebe Leute. Willkommen zum ersten Video zur Vorlesungsreihe Betriebssysteme.
Erstes Kapitel, erster Teil. Vorwort zu dieser Vorlesung. Die Lehrveranstaltung an sich gilt für alle.
Jeder darf gerne teilnehmen. Allerdings, ihr werdet merken, ihr braucht für diese Vorlesung gewisse Vorkenntnisse.
Wir gehen davon aus, dass ihr diese Vorkenntnisse habt. Entweder könnt ihr sie bei uns am Lehrstuhl erworben haben.
Beispielsweise durch die Vorlesung Systemprogrammierung. Meinerlei könnt ihr sie aber auch gerne woanders erworben haben.
Worum soll es denn dieser Vorlesung gehen? Es geht zum einen ausgehend von dem Thema Systemprogrammierung.
Systemprogrammierung, was heißt das? Da haben wir von außen Systeme benutzt.
Ihr habt C-Programme damals geschrieben für ein Betriebssystem. Ihr habt Betriebssystemfunktionen aufgerufen.
Jetzt soll es umgekehrt darum gehen, dieses Systemaufruf selber zu bauen.
Da haben wir von oben drauf geguckt und jetzt bauen wir das unten drunter selber.
Ihr sollt entweder, komme ich gleich noch genauer drauf, entweder OO-Stubs basteln.
OO-Stubs heißt Objekt orientiertes Studentenbetriebssystem. Das ist gedacht ein Monoprozessorsystem.
Eine CPU und die verwaltet ihr. Oder andere Variante Multiprozessor Studentenbetriebssystem heißt ihr verwaltet mehr als eine CPU.
Die Idee ist einfach, ihr sollt selber ein Betriebssystem von Grund auf selber bauen.
Einfach um Erfahrungen zu kriegen, wie macht man sowas eigentlich?
Ihr werdet merken, dafür müsst ihr eine ganze Menge Hardware-Kenntnisse haben.
In unserem Fall, wir machen das ganze mit PCs, typischen PCs, so wie ihr sie kennt.
Also entweder Desktop oder auch Laptop mit x86 Architektur, also Intel AMD XARX Prozessoren.
Was sind unsere Voraussetzungen? Ich habe schon mal gesagt, gewisse Dinge setzen wir einfach voraus.
Beispielsweise Systemprogrammierungskennnisse, ob ihr die in SP1-2 erhalten habt oder woanders an einer anderen Uni erfahren habt, wie es geht, das ist uns egal.
Wir wollen unser Betriebssystem selbst in C++ programmieren.
Da wäre es natürlich günstig, ihr würdet schon mal ein bisschen C++ können.
Gut, C sollte ihr das System Programmierung gelernt haben, objektorientierte Programmierung habt ihr vielleicht auch durch Java oder so ein bisschen kennengelernt.
Unser Betriebssystem selbst soll in C++ passieren.
Jetzt keine besonders aufregenden Features von C++ werden genutzt.
Also wer Grundkenntnisse in C++ hat, das reicht typischerweise.
Ihr könnt euch aber auch, da gibt es noch ein Tutorial von unseren Übungsleitern für C++, das könnt ihr euch natürlich gerne mal angucken.
Assembler-Programmierung muss auch ein bisschen sein, allerdings mini, mini, minimal.
Auch dafür gibt es allerdings in der Vorlesung dann Hinweise und Übungen.
Was am wichtigsten ist, ist vielleicht der dritte Punkt, Durchhaltevermögen.
Ich sage immer, Betriebssystem-Programmierung ist so binär, geht oder geht nicht.
Und wenn es nicht geht, dann bleibt einfach der Bildschirm schwarz und gar nichts geht. Man sieht nichts, man hört nichts, passiert nichts.
Da dann entsprechend die Fehler zu finden, das ist vielfach eine Herausforderung.
Da muss man einfach Zähne zusammenbeißen und durch.
Wie wir ja noch sehen, ein Debugger hilft einem nicht, es gibt praktisch keine Tools, die einem da groß weiterhelfen.
Ein paar kleine Ansätze gibt es, aber im Wesentlichen heißt es, hingucken, code wühlen, gucken, dass der richtig ist.
Da muss man einfach hartnäckig sein.
Schön wäre natürlich, wenn ihr Freude habt an Systemprogrammierung, Hardware-nahe Programmierung.
Das machen wir nämlich, wir benutzen einfach schlicht die nackte Maschine, den nackten PC ohne irgendwas drauf.
Das würde auch funktionieren ohne Festplatte sozusagen.
Das komische ist, die meisten sind überrascht, dass das eigentlich Spaß macht.
Da ist man so sein eigener Herr, da muss man sich an nichts halten, an irgendwelche Bibliotheken, die da vorgegeben sind.
Da ist einem nichts vorgegeben, man macht einfach alles selber.
Ich finde das macht Spaß und viele Eure Vorgänge haben auch immer gesagt, klasse Sache.
Wie könnt ihr das nutzen?
Ihr könnt es nutzen in eurem Studienplan in etwa wie folgt.
Ihr habt im dritten Semester abgeschlossen Systemprogrammierung.
Jetzt kommt bei uns am Lehrstuhl im typischerweise ersten oder dritten Mastersemester, kann aber auch Bachelor sein, die Vertiefungsveranstaltung.
In unserem Falle BS, das könnt ihr belegen als 5 ECTS oder 7,5 ECTS Modul.
Das erkläre ich euch noch genauer. Wenn ihr das mal gemacht habt, dann liegt noch die Vertiefungsveranstaltung, die Erweiterungsveranstaltung dazu sich anzutun.
Presenters
Zugänglich über
Offener Zugang
Dauer
00:13:34 Min
Aufnahmedatum
2020-10-20
Hochgeladen am
2020-10-20 19:46:42
Sprache
de-DE
1. Kapitel der Vorlesung Betriebssysteme.