diff --git a/Betriebssysteme - Flashcards.pdf b/Betriebssysteme - Flashcards.pdf new file mode 100644 index 0000000..c1d9892 Binary files /dev/null and b/Betriebssysteme - Flashcards.pdf differ diff --git a/Betriebssysteme - Flashcards.tex b/Betriebssysteme - Flashcards.tex new file mode 100644 index 0000000..9555a12 --- /dev/null +++ b/Betriebssysteme - Flashcards.tex @@ -0,0 +1,719 @@ +% +% +% das Paket "flashcards" erzeugt Karteikarten zum lernen +% auf der Vorderseite steht das Buzzword oder die Frage +% auf der Rückseite steht die Antwort +% beim ausdrucken auf doppelseitiges Drucken achten +% +% +\documentclass[avery5371]{flashcards} +\usepackage[utf8]{inputenc} +\usepackage[]{amsmath} +\usepackage[]{amssymb} +\cardfrontstyle{headings} +\begin{document} + +\begin{flashcard}[Einführung]{Wo sind Betriebssysteme zu finden?} + Computer, Mikroprozessoren, Flugzeuge, Maschinen, Smartphones +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Einführung]{Welches Spektrum decken sie ab?} + mittlerweile weltweit eingesetzt in Industrie und Privathaushalten +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Einführung]{Welche Arten von Betriebssystemen gibt es?} + Mainframe, Server, Parallelrechner, Desktop/Laptop, Echtzeit, Eingebettete Systeme +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Einführung]{Welche funktionalen und nichtfunktionalen Eigenschaften spielen dabei eine Rolle?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{flashcard}[Prozesszustände und Zustandsmodelle]{Warum existieren Prozesszustände? Gehen Sie speziell auf die Prozesszustände "bereit" und "blockiert" ein.} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Prozesszustände und Zustandsmodelle]{Welches sind die in praktisch jedem Betriebssystem implementierten (grundlegenden) Prozesszustände?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Prozesszustände und Zustandsmodelle]{Nennen Sie Gründe für die Einführung weiterer Prozesszustände. Welche weiteren Prozesszustände sind Ihnen bekannt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Prozesszustände und Zustandsmodelle]{Was ist die Aufgabe von Zustandsmodellen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Prozesszustände und Zustandsmodelle]{Charakterisieren Sie das 3/5- und das 7-Zustandsmodell.} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Prozesszustände und Zustandsmodelle]{Welchen Zusammenhang gibt es zwischen Prozesszuständen, Zustandsmodellen und der Automatentheorie?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Scheduler]{Aus welchen Gründen existiert im Betriebssystem die Komponente "Scheduler" und welche Aufgaben hat diese?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Scheduler]{Besitzt jedes Betriebssystem einen Scheduler?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Scheduler]{Charakterisieren Sie die Arbeitsweise eines Schedulers.} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Scheduler]{Welche Vorkommnisse können allgemein zu einer Aktivierung des Schedulers führen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Scheduling-Strategie und Scheduling-Algorithmus]{Nennen Sie mögliche strategische Ziele des Scheduling.} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Scheduling-Strategie und Scheduling-Algorithmus]{Was ist der Unterschied zwischen Scheduling-Strategie und Scheduling-Algorithmus?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Kontextwechsel]{Was bedeutet es, einen Kontextwechsel auszuführen? Was muss dabei alles getan werden?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Kontextwechsel]{Wodurch entstehen die Kosten eines Kontextwechsels und worauf wirken sich diese aus?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Last und Lastmuster]{Was ist unter "Last" in einem Computer-System zu verstehen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Last und Lastmuster]{Welche charakteristischen Lastmuster könnten dabei vorliegen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Last und Lastmuster]{Welcher mögliche Zusammenhang existiert zwischen verschiedenen Lastmustern und verschiedenen Schedulingstrategien?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Batch-Systeme, Interaktive Systeme und Echtzeitsysteme]{Wodurch sind die genannten Systeme jeweils charakterisiert?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Batch-Systeme, Interaktive Systeme und Echtzeitsysteme]{Nennen Sie jeweils geeignete Scheduling-Strategien und charakterisieren Sie diese.} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Privilegierungsebenen]{Welchen Sinn haben Privilegierungsebenen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Privilegierungsebenen]{Welches sind die grundlegenden, typischerweise verwendeten Privilegierungsebenen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Privilegierungsebenen]{Wie wirkt sich die Ausführung einer Aktivität in einer bestimmten Privilegierungsebene auf deren Arbeitsweise aus?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Synchronisation \&Kommunikation]{Was versteht man unter einem kritischen Abschnitt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Synchronisation \&Kommunikation]{Warum darf sich in einem kritischen Abschnitt immer nur 1 Thread aufhalten?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Synchronisation \&Kommunikation]{Wie können kritische Abschnitte geschützt werden?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Synchronisation \&Kommunikation]{Was ist eine exklusiv nutzbare Ressource?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Synchronisation \&Kommunikation]{Welchen Zusammenhang gibt es zu kritischen Abschnitten?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Synchronisation \& Kommunikation]{Welcher Zusammenhang existiert zwischen "exkluviv nutzbarer Ressource", "kritischer Abschnitt" und "race conditions"?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Semaphor]{Beschreiben Sie einen Semaphor?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Semaphor]{Wozu wird er verwendet?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{Beschreiben Sie einen Monitor?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{Wozu wird dieser verwendet?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{Welche Vorteile bieten Monitore gegenüber Semaphoren? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{Was bedeutet Atomarität (von Anweisungen)?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{Wo ist Atomarität bei Semaphoren notwendig?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{Wie kann Atomarität durch Maschinenbefehle unterstützt werden?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{Wozu dienen Bedingungsvariable bei Monitoren? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Monitor (Hoar‘scher)]{b) Welche Verwendungsmöglichkeiten von Bedingungsvariablen sind noch denkbar?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{flashcard}[Transaktionaler Speicher]{Welche Entwicklungen führten zu Entwicklungsarbeiten bezüglich dieses Konzepts?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Transaktionaler Speicher]{Verbirgt sich hinter diesem Konzept eine pessimistische oder eine optimistische Herangehensweise an die Synchronisationsproblematik – und warum?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Botschaften und botschaftenbasierte Kommunikation]{Unter welchen Bedingungen muss botschaftenbasierte Kommunikation zur Anwendung kommen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Botschaften und botschaftenbasierte Kommunikation]{Charakterisieren Sie die 2 elementaren Methoden zur Realisierung botschaftenbasierter Kommunikation!} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Fernaufrufe]{Warum wird unter den entsprechenden Bedingungen (siehe oben) nicht alle Kommunikation über Botschaften abgewickelt – was ist das Besondere an den stattdessen auch verwendeten Prozedurfernaufrufen bzw. Methodenfernaufrufen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Fernaufrufe]{Wie ist die Kommunikation in Mikrokern-Betriebssystemen organisiert?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Systemaufrufe]{Welchem Zweck dienen Systemaufrufe?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Systemaufrufe]{Welche Beispiele von Systemaufrufen sind Ihnen bekannt? – Wozu dienen diese jeweils?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Systemaufrufe]{Warum realisieren Systemaufrufe keinen direkten Einsprung in den Betriebssystemkern?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Systemaufrufe]{Mit welchen Problemen muss bei der Realisierung von Systemaufrufen umgegangen werden – und wie sehen die Lösungen aus?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Ereignisse und Ereignismanagement]{Welche Dinge sind im Betriebssystemkontext Ereignisse?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Ereignisse und Ereignismanagement]{Welche Möglichkeiten gibt es, mit Ereignissen umzugehen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Ereignisse und Ereignismanagement]{Welche Vorteile bieten Interrupts (Unterbrechungen)?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Ereignisse und Ereignismanagement]{Welche drei Modelle gibt es zum Umgang mit Interrupts?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Ereignisse und Ereignismanagement]{Was sind Interruptvektor, Interruptvektortabelle und Interrupt-Service-Routinen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Ereignisse und Ereignismanagement]{Warum und inwieweit ist die Rechner-Hardware in die Interrupt-Bearbeitung involviert?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Ereignisse und Ereignismanagement]{Was versteht man unter Interrupts auf Anwendungsebene und wie kann damit umgegangen werden?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Eigenschaften sollte ein idealer Speicher haben?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Warum gibt es stattdessen in der Praxis Speicher-Hierarchien?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Charakterisieren Sie (grob) die bei Speicherhierarchien zum Einsatz kommenden Technologien und Speicherklassen.} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was sollte ein Arbeitsspeicher können?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Aus welchem Grund wurde die Relokation von Prozessen erforderlich – und was wird hierdurch erreicht?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Nachteile bringt die Relokation mit sich?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wie "funktioniert" Relokation – technisch gesehen? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Technik "steckt" hinter dem Begriff "Swapping"? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Probleme werden hiermit gelöst – welche nicht? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche neuen Probleme entstehen durch diese Technik (Swapping)?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Verfahren der Speicherverwaltung werden als Realspeicherverwaltung (im Gegensatz zu virtueller Speicherverwaltung) bezeichnet?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welches sind Grundidee und Zweck des virtuellen Speichers? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wie wird virtueller Speicher implementiert? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Rolle spielt dabei eine Memory Management Unit (MMU)? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was versteht man unter "virtueller Speicher" und "virtuelles Speichermanagement"? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was versteht man ganz allgemein unter einem Adressraum? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Erklären Sie die Begriffe "Adressraum eines Prozesses", "physischer Adressraum" und "virtueller Adressraum" in ausreichender Tiefe. } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welchem Zweck dient die genannte Abbildung $vm_p$? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Warum wird für jeden virtuellen Adressraum eine individuelle Abbildung benötigt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Aus welchem Grund gibt es unbenutzte bzw. undefinierte Adressbereiche? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wieso realisiert vm p nur eine partielle Abbildung des virtuellen in den physischen Adressraum? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Durch welchen Effekt wird durch vm p die Isolation verschiedener virtueller Adressräume erreicht? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Warum kann es Ausnahmen von dieser Isolation geben – und was soll hierdurch ermöglicht werden? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Aufgaben hat eine MMU? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Könnten die Aufgaben einer MMU auch ohne eine solche gelöst werden – und welche Nachteile hätte dies gegebenenfalls?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was versteht man jeweils unter "Seite" (page) und Seitenrahmen (page frame) im Kontext der virtuellen Speicherverwaltung? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Aufgaben hat die Seiten(abbildungs)tabelle? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Struktur hat ein Seitentabelleneintrag?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Problemfelder existieren bei der virtuellen Speicherverwaltung (VMM)?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Lösungsmöglichkeiten existieren für die Probleme 1 bis 3?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was ist unter einem Seitenfehler zu verstehen – und wie kommt ein solcher zustande? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was ist ein Seitenfehler-Interrupt – und welchem Zweck dient er? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Aufgaben lösen jeweils die Hardware bzw. die Software im Zusammenhang mit einem Seitenfehler-Interrupt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was ist der Translation Look-aside Buffer und welche Funktion hat er? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was ist bei der Verwaltung (Management) des TLB zu beachten? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche prinzipielle Frage stellt sich bei den Seitenaustausch-Algorithmen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was versteht man unter der optimalen Seitenaustausch-Strategie – und warum wendet man diese aber nicht an?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Worin besteht die Grundannahme bei der First-In-First-Out-Strategie und was ist von dieser zu halten? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Vorteile besitzt sie trotzdem? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wodurch verbessert die Second-Chance-Strategie die FIFO-Strategie?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Vor- und Nachteile besitzt die Second-Chance-Strategie? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wie unterscheidet sich die Grundannahme der LRU-Strategie von derder Second-Chance-Strategie?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Warum sind die Voraussetzungen zur Realisierung von LRU "teuer" – und wie sehen tatsächliche technische Realisierungen aus? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Komponenten eines Seitentabelleneintrags sind für die technischen Realisierungen von LRU erforderlich?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Was versteht man unter dem Working Set ("Arbeitsmenge") eines Prozesses?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Von welcher Grundannahme geht die Working-Set-Strategie aus – und welcher Typ von Seiten sind hier Auslagerungskandidaten? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wie ist die Arbeitsmenge eines Prozesses definiert? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Komponenten eines Seitentabelleneintrags sind zu einer technischen Realisierung der Working-Set-Strategie erforderlich? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wie ist die Working-Set-Strategie einzuschätzen (Bewertung)? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wie funktioniert die WSClock-Strategie?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche (schon vorher bekannten) Ideen wurden für die WSClock verwendet? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Welche Probleme werden mittels Segmentierung gelöst?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Speichermanagement]{Wie funktioniert Segmentierung mit Paging – und wozu ist diese Verfahrensweise gut?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Wozu werden Dateien benutzt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Wie ist eine Datei definiert? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche wichtigen Eigenschaften sollten Dateien haben – und warum?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Aufgabe haben Dateimodelle?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Wodurch unterscheiden sich verschiedene Dateimodelle? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Wozu werden (symbolische) Dateinamen benutzt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Transparenzeigenschaften können durch die Gestaltung der Dateinamen ausgedrückt werden? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Was ist ein hierarchischer Namensraum und welche Vorteil hat er?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Eigenschaft besitzt der hierarchischer Namensraum? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Vorteile besitzen unstrukturierte Dateien? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Warum gibt es trotzdem strukturierte Dateien? } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Nennen Sie typische Dateiattribute. } + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Was sind Sicherheitsattribute und wie können diese aussehen?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Dateioperationen werden in jedem Dateisystem benötigt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Funktion haben die Operationen "lseek" und "mmap" – und käme man auch ohne diese beiden Funktionen aus?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Aufgaben haben Dateisysteme?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Was ist Ihnen über das physische Layout von Magnetplatten bekannt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Charakterisieren Sie den Begriff "Sektor" – warum ist er wichtig?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welches sind wichtige Parameter von Speichermedien?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Wie unterscheiden sich die Eigenschaften von Magnetplatten und SSDs prinzipiell?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche prinzipiellen Management-Datenstrukturen gibt es?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Informationen enthält ein i-Node?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Aufgaben haben Verzeichnisse?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Wie kann ein symbolischer hierarchischer Namensraum dargestellt werden?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Durch welche 2 Formen können freie Speicherbereiche beschrieben werden?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Was wird durch den Superblock beschrieben?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche prinzipiellen Informationen sind hier zu finden?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Beschreiben Sie die einzelnen Schritte verschiedener Dateizugriffsarten} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flashcard}[Dateisysteme]{Welche Management-Datenstrukturen sind dabei und zu welchem Zweck beteiligt?} + ? +\end{flashcard} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\end{document} \ No newline at end of file diff --git a/Betriebssysteme - Fragen.md b/Betriebssysteme - Fragen.md index 64b0f44..d979098 100644 --- a/Betriebssysteme - Fragen.md +++ b/Betriebssysteme - Fragen.md @@ -1,5 +1,20 @@ Fragen und Fragestellungen zum Verständnis zur Vorlesung +# Einführung +> Wo sind Betriebssysteme zu finden? + + +--- +> Welches Spektrum decken sie ab? + + +--- +> Welche Arten von Betriebssystemen gibt es? + + +--- +> Welche funktionalen und nichtfunktionalen Eigenschaften spielen dabei eine Rolle? + # Prozesszustände und Zustandsmodelle > Warum existieren Prozesszustände? Gehen Sie speziell auf die Prozesszustände „bereit“ und „blockiert“ ein. diff --git a/Betriebssysteme - MindMap.pdf b/Betriebssysteme - MindMap.pdf new file mode 100644 index 0000000..b88c1f1 Binary files /dev/null and b/Betriebssysteme - MindMap.pdf differ diff --git a/Betriebssysteme - MindMap.tex b/Betriebssysteme - MindMap.tex new file mode 100644 index 0000000..d6bc18e --- /dev/null +++ b/Betriebssysteme - MindMap.tex @@ -0,0 +1,275 @@ +\documentclass[a4pape]{article} +\usepackage[utf8]{inputenc} +\usepackage{tikz} +\usepackage{pdflscape} +\usetikzlibrary{mindmap} + +%%%% Predefined Colors: black, blue, brown, cyan, darkgray, gray, green, lightgray, lime, magenta, olive, orange, pink, purple, red, teal, violet, white, yellow. + +\pagestyle{empty} +\begin{document} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Überblick +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=black!10, + level 1/.append style={level distance=4cm}, + level 2/.append style={level distance=3cm, sibling angle=30}, + every node/.append style={scale=0.8}] + + \node{Betriebssysteme} + child [concept color=red!30]{ node {Prozessor-management} + child { node {Prozess-erzeugung}} + child { node {Prozess-terminierung}} + child { node {Threads}} + } + child [concept color=green!30]{ node {Scheduling} + child { node {Scheduler-aktivierung}} + child { node {Scheduling Strategien}} + } + child [concept color=blue!30]{ node {Privilegierungs-ebenen}} + child [concept color=yellow!30]{ node {Kommunikation und\\Synchronisation} + child { node {Elementare Konzepte}} + child { node {wechselseitiger Ausschluss}} + child { node {Mechanismen}} + } + child [concept color=orange!30]{ node {Speicher-management} + child { node {Speicher-technologien}} + child { node {Speicher-klassen}} + child { node {Relokation}} + child { node {Swapping}} + child { node {Virtueller Speicher}} + child { node {Segmentierung}} + } + child [concept color=lime!30]{ node {Dateisystem} + child { node {Dateimodelle}} + child { node {Dateisysteme}} + child { node {Datenstrukturen \& Algorithmen}} + }; +\end{tikzpicture} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Grundbegriffe +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=black!40, + level 1/.append style={level distance=4cm, sibling angle=120}, + level 2/.append style={level distance=3cm, sibling angle=30}, + every node/.append style={scale=0.8}] + \node{Grundbegriffe} + child[concept color=red!30]{node{Funktionale Eigenschaften} + child{node{Authentisierung, Verschlüsselung}} + child{node{Informations-management}} + child{node{Kommunikations-management}} + child{node{Ressourcen-management}} + } + child[concept color=green!30]{node{Nichtfunktionale Eigenschaften} + child{node{Sicherheit}} + child{node{Korrektheit}} + child{node{Echtzeitfähigkeit}} + child{node{Skalierbarkeit}} + child{node{Offenheit}} + child{node{Sparsamkeit}} + child{node{Verfügbarkeit}} + child{node{Robustheit}} + } + child[concept color=blue!30]{node{Betriebssysteme} + child{ node {Mainframe Betriebssystem} + child{ node {performante E/A}} + child{ node {Massen-daten-verarbeitung}} + } + child{ node {Server Betriebssystem} + child{ node {Web Server, Fileshare}} + } + child{ node {Parallelrechner Betriebssystem} + child{ node {parallele Algorithmen mit hohem Rechenbedarf}} + child{ node {schnelle IPC}} + } + child{ node {Desktop/Laptop Betriebssystem} + child{ node {Interaktivität \& Responsivität}} + } + child{ node {Echtzeit Betriebssystem} + child{ node {Einhaltung zeitlicher Garantien}} + child{ node {Fahrzeug-, Anlagensteuerung}} + } + child{ node {Eingebettete Systeme} + child{ node {in Fahrzeugen, Kaffeemaschinen...}} + } + } + ; +\end{tikzpicture} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Prozessormanagement +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=red!40, + level 1/.append style={level distance=4cm, sibling angle=90}, + level 2/.append style={level distance=3cm, sibling angle=35}, + every node/.append style={scale=0.8}] + \node{Prozessormanagement} + child[concept color=blue!30] { node {Prozesserzeugung} + child { node {Vorraus-setzungen} + child { node {Rechte}} + child{ node {Ressourcen Verfügbar}} + child{ node {Sicherheit}} + child{ node{Fariness}} + child{node{Robustheit / Überlastungsvermeidung}} + } + child { node {Namens-vergabe} + child{node{eindeutig bzgl allen existierenden}} + child{node{nicht eindeutig bzgl allen}} + } + child { node {Stammbaum-pflege} + child{node{erzeugt Kinder}} + child{node{baumartige Hierarchie}} + child{node{Verwaiste Prozesse -> Adoption}} + } + child { node {Allokation (von Ressourcen)} + child{node{Arbeits-speicher} + child{node{Größe}} + child{node{Zeitpunkt}} + } + child{node{Prozessorzeit}} + child{node{Format} + child{node{a.out (ehem UNIX)}} + child{node{Mach Object (iOS)}} + child{node{Executeable and Link(age/able) (Linux)}} + } + } + } + child[concept color=red!30] { node {Prozess Management} + child{node{Prozess-identifikation}} + child{node{Scheduling}} + child{node{Ereignis-management}} + child{node{Rechte-management}} + child{node{Speicher-management}} + child{node{Prozessor-management}} + child{node{Kommunikations-management}} + child{node{Virtueller Adressraum}} + child{node{allg Ressourcen Management}} + } + child[concept color=green!30] { node {Prozessterminierung} + child{node{durch} + child{node{Aufgabe erledigt}} + child{node{Fehler aufgetreten}} + child{node{durch Nutzer geschlossen}} + } + child{node{Folgen} + child{node{Freigabe der Ressourcen}} + child{node{Benachrichtigung der "Parents"}} + child{node{Adoption der "Children"}} + } + } + child[concept color=yellow!30] { node {Threads} + child{node{sequenziell innerhalb eines Prozesses}} + child{node{Kernel Level Thread} + child{node{Implementiert im Betriebssystem}} + child{node{Betriebssystem hat Kenntnis über Thread}} + child{node{Multi-Thread-modell}} + child{node{Performance durch Parallelität}} + child{node{Nutzung von Mehrkern-architektur}} + } + child{node{User Level Thread} + child{node{Implementiert auf Anwendungsebene}} + child{node{Kenntnis nur bei Endbenutzer}} + child{node{Single-Thread-Modell}} + child{node{Performance durch geringen Overhead}} + child{node{management ohne systemaufrufe}} + child{node{Individualität}} + child{node{Portabilität}} + } + } + ; +\end{tikzpicture} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Scheduling +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=green!40, + level 1/.append style={level distance=4cm}, + level 2/.append style={level distance=3cm, sibling angle=30}, + every node/.append style={scale=0.8}] + \node{Scheduling} + child { node {Scheduler-aktivierung}} + child { node {Scheduling Strategien} + child { node {Batch-System}} + child { node {Interaktives System}} + }; +\end{tikzpicture} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Privilegierungsebenen +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=blue!40, + level 1/.append style={level distance=4cm}, + level 2/.append style={level distance=3cm, sibling angle=30}, + every node/.append style={scale=0.8}] + \node{Privilegierungsebenen}; +\end{tikzpicture} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Kommunikation und Synchronisation +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=yellow!40, + level 1/.append style={level distance=4cm}, + level 2/.append style={level distance=3cm, sibling angle=30}, + every node/.append style={scale=0.8}] + \node{Kommunikation und \\Synchronisation} + child { node {Elementare Konzepte}} + child { node {wechselseitiger Ausschluss}} + child { node {Mechanismen} + child { node {(binäre) Semaphore}} + child { node {Hoare'sche Monitore}} + } + child { node {weitere} + child { node {Trans-aktionaler Speicher}} + child { node {Botschaften}} + child { node {Fernaufrufe (Remote Procedure Calls)}} + child { node {System-aufrufe}} + child { node {Ereignis-management}} + child { node {IPC Modell}} + child { node {pop-up-Thread-Modell}} + }; +\end{tikzpicture} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Speichermanagement +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=orange!40, + level 1/.append style={level distance=4cm}, + level 2/.append style={level distance=3cm, sibling angle=30}, + every node/.append style={scale=0.8}] + \node{Speichermanagement} + child { node {Speichertechnologien }} + child { node {Speicherklassen}} + child { node {Relokation}} + child { node {Swapping}} + child { node {Virtueller Speicher} + child { node {Virtuelles Speichermanagement}} + child { node {Begriffe}} + child { node {Abbildung}} + child { node {Memory Management Units}} + child { node {Seiten-abbildungs-tabellen}} + child { node {Seitenaustausch-Algorithmen} + child { node {FIFO}} + child { node {Second Chance}} + child { node {Least Recently Used}} + child { node {Working Set}} + child { node {WSClock}} + } + } + child { node {Segmentierung}} + ; +\end{tikzpicture} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Dateisystem +\begin{tikzpicture}[ mindmap, grow cyclic, every node/.style=concept, concept color=lime!40, + level 1/.append style={level distance=4cm}, + level 2/.append style={level distance=3cm, sibling angle=30}, + every node/.append style={scale=0.8}] + \node{Dateisystem} + child { node {Dateimodelle} + child { node {Abstraktion Datei}} + child { node {symbolischer Namen}} + child { node {Datei-Attribute}} + child { node {Operationen auf Dateien}} + } + child { node {Dateisysteme} + child { node {Speichermedien}} + child { node {Management-Datenstrukturen} + child { node {Verzeichnisse}} + child { node {Freiliste}} + child { node {Superblock}} + } + } + child { node {Datenstrukturen u. Algorithmen}} + ; +\end{tikzpicture} + + +\end{document} \ No newline at end of file diff --git a/Betriebssysteme.md b/Betriebssysteme.md index 767c689..288fca9 100644 --- a/Betriebssysteme.md +++ b/Betriebssysteme.md @@ -4,6 +4,89 @@ date: Wintersemester 20/21 author: Robert Jeutter --- +- [Einführung](#einführung) + - [Extrem breites Anwendungsspektrum](#extrem-breites-anwendungsspektrum) + - [Funktionale und nicht-Funktionale Eigenschaften](#funktionale-und-nicht-funktionale-eigenschaften) + - [Funktionale Eigenschaften (= Funktionen, Aufgaben)](#funktionale-eigenschaften--funktionen-aufgaben) + - [Nichtfunktionale Eigenschaften](#nichtfunktionale-eigenschaften) + - [Blick in Betriebssystem-Zoo](#blick-in-betriebssystem-zoo) +- [Prozessormanagement: Prozesse und Threads](#prozessormanagement-prozesse-und-threads) + - [Grundsätzliches](#grundsätzliches) + - [Prozesserzeugung](#prozesserzeugung) + - [Was geschieht bei der Prozesserzeugung](#was-geschieht-bei-der-prozesserzeugung) + - [Prozesserzeugung: notwenige Vorraussetzungen](#prozesserzeugung-notwenige-vorraussetzungen) + - [Prozesserzeugung: Namensvergabe](#prozesserzeugung-namensvergabe) + - [Prozesserzeugung: Stammbaumpflege](#prozesserzeugung-stammbaumpflege) + - [Prozesserzeugung: Allokation (Zuordnung) von Ressourcen](#prozesserzeugung-allokation-zuordnung-von-ressourcen) + - [Prozesserzeugung: Management Datenstrukturen](#prozesserzeugung-management-datenstrukturen) + - [Aktionen des Prozessmanagements](#aktionen-des-prozessmanagements) + - [Prozessterminierung](#prozessterminierung) + - [Threads](#threads) +- [Scheduling](#scheduling) + - [Das Problem](#das-problem) + - [Aufgabe der Zustandsmodelle](#aufgabe-der-zustandsmodelle) + - [Scheduleraktivierung](#scheduleraktivierung) + - [Scheduling Strategien](#scheduling-strategien) + - [Batch-System („Stapelverarbeitungs“-System)](#batch-system-stapelverarbeitungs-system) + - [Interaktives System](#interaktives-system) + - [Einbeziehung von Prioritäten](#einbeziehung-von-prioritäten) + - [Schedulingziele in Echtzeitsystemen](#schedulingziele-in-echtzeitsystemen) + - [Zusammenfassung](#zusammenfassung) +- [Privilegierungsebenen](#privilegierungsebenen) +- [Kommunikation und Synchronisation](#kommunikation-und-synchronisation) + - [Elementare Konzepte](#elementare-konzepte) + - [Algorithmen zum wechselseitigen Ausschluss](#algorithmen-zum-wechselseitigen-ausschluss) + - [Synchronisations- & Kommunikationsmechanismen](#synchronisations---kommunikationsmechanismen) + - [(binäre) Semaphore](#binäre-semaphore) + - [Hoare'sche Monitore](#hoaresche-monitore) + - [weitere Konzepte](#weitere-konzepte) + - [Transaktionaler Speicher](#transaktionaler-speicher) + - [Botschaften](#botschaften) + - [Fernaufrufe (Remote Procedure Calls, RPCs)](#fernaufrufe-remote-procedure-calls-rpcs) + - [Systemaufrufe](#systemaufrufe) + - [Ereignismanagement](#ereignismanagement) + - [IPC Modell](#ipc-modell) + - [pop-up-Thread-Modell](#pop-up-thread-modell) + - [Implementierungstechniken](#implementierungstechniken) + - [Zusammenfassung](#zusammenfassung-1) +- [Speichermanagement](#speichermanagement) + - [Speichertechnologien und -klassen](#speichertechnologien-und--klassen) + - [Was muss Arbeitsspeicher können?](#was-muss-arbeitsspeicher-können) + - [Layout des (physischen) Arbeitsspeichers: 50er Jahre](#layout-des-physischen-arbeitsspeichers-50er-jahre) + - [Layout des physischen Arbeitsspeichers: 60er Jahre](#layout-des-physischen-arbeitsspeichers-60er-jahre) + - [Relokation](#relokation) + - [Swapping](#swapping) + - [Virtueller Speicher](#virtueller-speicher) + - [Virtuelles Speichermanagement (VMM)](#virtuelles-speichermanagement-vmm) + - [Begriffe](#begriffe) + - [Abbildung $vm_p$](#abbildung-vm_p) + - [Memory Management Units (MMUs)](#memory-management-units-mmus) + - [Seitenabbildungstabellen](#seitenabbildungstabellen) + - [Seitenaustausch-Algorithmen](#seitenaustausch-algorithmen) + - [First-In , First-Out (FIFO)](#first-in--first-out-fifo) + - [Second Chance (Variante des FIFO-Algorithmus)](#second-chance-variante-des-fifo-algorithmus) + - [Least Recently Used (LRU)](#least-recently-used-lru) + - [Working Set](#working-set) + - [WSClock](#wsclock) + - [Zusammenfassung](#zusammenfassung-2) + - [Segmentierung](#segmentierung) + - [VMM- Abstraktionen in der Praxis](#vmm--abstraktionen-in-der-praxis) + - [Zusammenfassung](#zusammenfassung-3) +- [Dateisystem](#dateisystem) + - [Dateimodelle](#dateimodelle) + - [Aufgabe: Präzise Festlegung der Semantik der Abstraktion „Datei“](#aufgabe-präzise-festlegung-der-semantik-der-abstraktion-datei) + - [Aufgabe: Identifikation von Dateien mittels symbolischer Namen](#aufgabe-identifikation-von-dateien-mittels-symbolischer-namen) + - [Datei-Attribute](#datei-attribute) + - [Operationen auf Dateien](#operationen-auf-dateien) + - [Zusammenfassung Dateimodelle](#zusammenfassung-dateimodelle) + - [Dateisysteme](#dateisysteme) + - [Speichermedien](#speichermedien) + - [Management-Datenstrukturen auf Speichermedien](#management-datenstrukturen-auf-speichermedien) + - [Verzeichnisse](#verzeichnisse) + - [Freiliste](#freiliste) + - [Superblock](#superblock) + - [Datenstrukturen u. Algorithmen des Betriebssystems](#datenstrukturen-u-algorithmen-des-betriebssystems) + # Einführung worauf es ankommt: - Korrektheit @@ -78,12 +161,6 @@ Wie - mit welchen speziellen weiteren Eigenschaften sollen die funktionalen Eige - in Fahrzeugen, Kaffeemaschinen, Telefonen... - z.T. Spezialaufgaben -## Grundbegriffe -- Wo sind Betriebssysteme zu finden? -- Welches Spektrum decken sie ab? -- Welche Arten von Betriebssystemen gibt es? -- Welche funktionalen und nichtfunktionalen Eigenschaften spielen dabei eine Rolle? - # Prozessormanagement: Prozesse und Threads ## Grundsätzliches 1. Computer bearbeiten Aufgaben in wohldefinierten Arbeitsabläufen (beschrieben durch Programme/Algorithmen) diff --git a/README.md b/README.md index 14f2d24..9458b3f 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,8 @@ Unterlagen zu Informatik Vorlesungen der TU Ilmenau - [Flashcards - Karteikarten für Definitionen](Automaten,%20Sprachen%20und%20Komplexität%20-%20Flashcards.pdf) (ongoing) - [Mind Map](Automaten,%20Sprachen%20und%20Komplexität%20-%20MindMap.pdf) (ongoing) - [Betriebssysteme](Betriebssysteme.md) (ongoing) + - [Flashcards/Karteikarten](Betriebssysteme%20-%20Flashcards.pdf)(ongoing) + - [Mind Map](Betriebssysteme%20-%20MindMap.pdf) (ongoing) - [Fragenkatalog](Betriebssysteme%20-%20Fragen.md) - [Computergrafik](Computergrafik.md) (ongoing) - [Computergrafik Cheatsheet](Computergrafik%20-%20Cheatsheet.pdf) (work in progress) @@ -26,6 +28,7 @@ Unterlagen zu Informatik Vorlesungen der TU Ilmenau - [Softwaretechnik](Softwaretechnik.md) (ongoing) - [MindMap](Softwaretechnik%20-%20MindMap.pdf) (ongoing) - [Seminar](Softwaretechnik%20-%20Seminar.pdf) (ongoing) + - [Beispiel Flowchart](Softwaretechnik%20Flowchart.tex) - [Stochastik](Stochastik.md) (ongoing) - [Telematik 1](Telematik%201.md) - [Telematik Cheatsheet](Telematik1-cheatsheet.pdf)