Ja mein mein liebe Leute herzlich willkommen zum zweiten Teil des ersten Kapitels zur Vorlesungsreihe
Betriebssysteme. Worum soll es gehen? Ja es soll darum gehen euch noch kurz zu zeigen was
dann so der Inhalt der Vorlesung sein wird. Es wird gehen letztendlich um diese Struktur,
manche Leute nennen das unser Betriebssystem Burger. Burger oben und unten, das interessiert uns nicht
so, aber das was dazwischen liegt also Gerätetreiber, Unterbrechungen, Geschichten, Interprozess,
Kommunikation, Prozesse selber und so weiter. Ja und diese einzelnen hier braunen Kästchen,
die kommen zum einen in den Übungsaufgaben vor. Also beispielsweise als allererstes sollt ihr mal
einen Gerätetreiber schreiben bzw. zwei, einen für die Konsole sozusagen, nämlich Bildschirmausgabe
und Tastatureingabe. Im zweiten Schritt wird das dann mit Interrupts gemacht, im dritten Schritt
werden die Interrupts dann auch vernünftig synchronisiert und so weiter. Und ihr seht,
in den Übungen kommt dann alle Bereiche irgendwie mal vor. So ähnlich in der Vorlesung, da gehe ich
auch über diese einzelnen Bereiche mal drüber. Plus noch irgendwie so ein paar allgemeinere Kapitel
im Sinne von ja wie man so ein Haufen Code eigentlich, beispielsweise Linux, das sind ein
Gigabyte Source Code Daten. Das muss irgendwie eine fünftige Struktur haben, sonst wird man da nie
glücklich mit. Das ist so Querschneidendes Thema und ansonsten natürlich die einzelnen braunen
Kästchen kommen mal dran und das machen wir an verschiedenen Beispielen. Also Windows,
Linux werden was die Software angeht immer Beispiel sein und ansonsten haben wir so x86,
Motorola Prozessoren, 3-Core Prozessoren, wo ich euch dann beispielsweise hier so ein bisschen die
Hardware Aspekte erkläre. Hier seht ihr eine Übersicht, die Übersicht gibt es auch im Netz.
Das ist so unser Stundenplan, wann passiert was. Ihr seht linke Seite die roten Kästchen,
das sind die einzelnen Vorlesungen und ihr seht mit Pfeilen dranhängend die verschiedenen
Übungsaufgaben. Also ihr solltet so der Plan die ersten zwei Vorlesungen euch angucken, dann
könnt ihr die erste Übung machen. Ihr solltet die nächsten zwei Vorlesungen euch angucken,
dann dazu passend ist die zweite Übungsaufgabe und wenn ihr das und so weiter, dann könnt ihr
die Aufgabe machen. Das wird euch in den Übungsaufgaben in der Übung selber natürlich
noch genauer erklärt. Worum geht es in den einzelnen Vorlesungen? Kleiner Überblick.
Die erste Vorlesungseinheit wird sein Betriebssystem Entwicklung. Also jetzt nicht ein spezielles Thema,
sondern überhaupt nur das Thema, wie kriege ich jetzt die einzelnen Teile, die ich da programmiere,
überhaupt auf meine Hardware drauf. Also das erste ist schon mal übersetzen und linken ist
nicht so einfach für das Betriebssystem wie für eine Anwendung. Nachdem man so kann jeder
Betriebssystem, da muss man halt mehr für wissen. Ein normales Anwenderprogramm kann ich einfach in
der Shell starten. Wie bute ich aber einen Rechner? Das ist natürlich was ganz anderes,
werden wir uns mal angucken. Und der größte Teil wird sein, ihr kennt das selber, Programme
schreibt man gerne, aber meistens mit Fehlern. Die Frage ist, wie kriegen wir die Fehler aus
dem Betriebssystem wieder raus? Und das ist beim Betriebssystem speziell eine Herausforderung.
Also beispielsweise kann man natürlich, kennt ihr alle, mit Printf debuggen. Man schreibt zwischen
den eigentlichen Code immer mal ein Printf, um zu gucken ob er da lang kommt. Problem natürlich
in unserem Fall, wohin schreibt dann ein Printf? Naja, beispielsweise auf dem Bildschirm, aber einen
Bildschirmdriver haben wir erstmal noch nicht. Oder manchmal schreibt man natürlich auch ein
Betriebssystem, sagen wir mal, für eine Waschmaschine. Eine Waschmaschine hat vielleicht gar kein Display.
Also das geht unter Umständen schon mal von daher gar nicht. Andere Ansatz wären so Simulatoren,
QEMO, KVM, VM, irgendwas in die Richtung kann man verwenden, so man denn so ein Simulator zur
Verfügung hat. Eventuell kann man auch Debugger verwenden, allerdings typischerweise nicht auf dem
Rechner, auf dem man jetzt sein Betriebssystem laufen lassen will, weil Debugger braucht auch
schon wieder Grundlagen, dass er überhaupt funktioniert. Was eventuell einfacher geht,
ist das sogenannte Remote Debugging. Also ich hänge an irgendeine Schnittstelle ein Debugger
dran und kann damit dann von einem anderen Knoten aus meinen eigentlichen Rechner beobachten, laufen
lassen und so weiter. Oder wenn man ganz viel Glück hat, hat man Hardware-Unterstützung, dass die
Hardware-Hersteller einem da irgendwas bieten, dann geht es eventuell einfacher. Gucken wir uns an.
Die nächsten Vorlesungseinheiten 3 bis 5 werden sich beschäftigen mit Programmunterbrechungen,
Presenters
Zugänglich über
Offener Zugang
Dauer
00:23:15 Min
Aufnahmedatum
2020-10-20
Hochgeladen am
2020-10-20 20:16:43
Sprache
de-DE
1. Kapitel der Vorlesung Betriebssysteme.