Sie sind auf Seite 1von 6

Fragekatalog Betriebssysteme Einfhrung: Grundfunktion eines BS wurde immer abgefragt, mal schauen vielleicht kommt es ja wieder dran.

Was versteht man unter einen Systemaufruf? Eine definierte Schnittstelle um aus dem Benutzermodus kontrollierten Zugriff auf ausgewhlte sensitive Befehle zu erlauben. Der Systemaufruf wird im Benutzermodus abgesetzt (Anwendungsprogramm) und dann , nach einem Kontextwechsel, vom Betriebssystem ausgefhrt. Welche Betriebssystemstrukturen unterscheidet man? Erlutern Sie jede stichpunktartig! Monolithische Systeme: BS besteht aus sehr vielen Routinen Jede Routine kann theoretisch jede andere Aufrufen Alle wesentlichen Komponenten sind zu einem homogenen Gebilde zusammengefgt Geschichtete Systeme: Hierarchische Strukturierung der Routinen Jede Schicht hat eine andere Privilegs-stufen Nutzung einer hher privilegierten Schicht durch Systemaufrufe Mikrokern: Groteil der Funktion des BS wird in den Benutzermodus ausgelagert Im Kern nur Minimalfunktionen Nennen und beschreiben sie kurz zwei Arten der Virtualisierung! Typ-1-Hypervisor: entspricht BS Gast-BS laufen im Benutzermodus muss von CPU untersttzt werden Typ-2-Hypervisor: Anwendungsprogramm, laufen als Prozess des Host-BS sensitive Befehle des Gast-BS werden zum Hypervisor umgeleitet und dort von ihm emuliert Prozesse und Threads Gegenberstellung Prozess und Thread war in letzter Prfung. Prozesszustnde waren auch schon hufiger dran. Wodurch wir ein Prozess vollstndig beschrieben? Prozesskontrollblock Prozessadressraum Erlutern Sie den Inhalt des PCB!

Der PCB besteht aus Prozessidentifikationsinformationen, Prozesskontrollinformationen und Prozessstatusinformationen. Prozessidentifikation: P-ID Eltern-P-ID Prozessbesitzer Prozesskontrollinformationen: Sheduling und Zustandsinformation IPC-Informationen (z.b. gesendete und empfangene Signale) Prozessprivilegien Ressourcenbesitz und Nutzung Prozesskontrollinformationen: Datenregister Adressregister Segmentregister (Zeiger auf Code-/Daten-/Stack-Segment) Befehlszhler Stapelzeiger Programmstatusregister Welchen Methoden gibt es um in Java Threads zu erzeugen? Klasse, die von Thread erbt oder Klasse, die das Runnable implementiert Erlutern Sie die Vorteile und Nachteile bei Implementierung des Thread-Modells im User- und im Kernmodus? User Kern + BS muss Threads nicht untersttzen + Echte Parallelitt ( falls mehrere CPUs) + Schneller Thread-Wechsel + ein Thread kann nicht ganzen Prozes blockieren + Schnelle Thread-Generierung und Beendigung + Individuelle Sheduling-Algorithmen mglich - Ein blockierter Thread, blockiert den ges. P. -Thread-Wechsel erfordert Wechsel zu BS - Thread-Generierung bentigt Systemaufruf

Interprozesskommunikation: Raceconditions wurde letztes Jahr gefragt. Lsung des Erzeuger-Verbraucher-Problem mit Semaphoren ebenfalls letztes Jahr. Aktives Warten auch. Definieren Sie den Begriff kritischer Bereich! Ein kritischer Bereich ist der Programmteil der auf gemeinsame Daten oder Ressourcen zugreift. Zhlen Sie 4 Methoden auf um kritische Bereiche durch aktives Warten zu realisieren und jeweils

einen Nachteil! Ausschalten von Interrupts-> BS verliert Kontrolle Sperrvariablen-> Race Conditions Strikter Wechsel-> ein Prozess wartet evtl. ewig Test and Set Lock-> Hardwareuntersttzung notwendig Erlutern Sie den Begriff Semaphore! Ein Semaphor ist eine Datenstruktur die einen Zhler (mit einen bergebenen Anfangswert) fr gesendete aber bisher noch nicht empfangene Signale bereit hlt. Die Datenstruktur hlt zwei Methoden bereit: wait zum empfangen eines Signal (Zhler-1) falls Zhler=0 warten auf ein gesendetes Signal. Signal fr das senden eines Signals (Zhler+1). Erlutern Sie das Monitorkonzept! Das Monitorkonzept soll den Programmierer entlasten hierzu werden alle kritischen Bereiche im Monitor gekapselt. Der Monitor ist eine Software-Einheit und besteht aus einer dem Monitor zugeordneten Prozesswarteliste, gekapselte und lokale Daten, Code zur Initialisierung der Daten, eine oder mehrere Routinen und Zustands-variablen eines eigenen Warteschlange-Datentyps. Alle in ihm gekapselten Module schlieen sich wechselseitig aus. Als Operation stellt er wait und notify zur Verfgung. Scheduling Welche Voraussetzung muss erfllt sein damit ein BS einen preemptiven Scheduler nutzen kann? Der Rechner muss einen Timer-Baustein haben der nach einer bestimmten Zeit einen Timerinterrupt ausfhrt. Welchen Nachteil hat eine kleine und welchen Nachteil hat eine groe Zeitscheibe beim preemptiven Scheduling? Gro-> Prozesse mit E/A-Operationen lange Antwortzeit klein->schlechte CPU-Ausnutzung (viele Kontextwechsel)

Deadlocks Definition in letzter Prfung Zhlen Sie die Bedingungen auf die gegeben sein mssen damit ein Deadlock entstehen kann! Wechselseitiger Ausschluss Hold and Wait Bedingung Ununterbrechbarkeit Zyklische Wartebedingung

Nennen und bewerten Sie kurz Strategien um einen Deadlock zu beheben! Unterbrechung bzw. temporrer Entzug einer Ressource nicht unterbrechbar deshalb nicht mglich Teilweise Wiederholung eines Prozesses Schwierig umzusetzen Prozesszustand und Speicher msste regelmig gespeichert werden Prozessabbruch schwierig zu bestimmen welcher Prozess problemlos neu gestartet werden kann Erlutern Sie wie man die Bedingungen Hold and wait und zyklische Wartebedingung unterlaufen kann, um so einen Deadlock zu verhindern. Hold and Wait: Jeder Prozess muss alle Ressoucen bereits zu Beginn anfordern Jeder Prozess gibt vor Anforderung einer weiteren Ressource alle bisher genutzten

Ressourcen kurzfristig frei. Zyklische Wartebedingung: Prozess darf gleichzeitig nur eine Ressource besitzen Festlegung der Anforderungsreihenfolge durch Durchnummerierung aller Ressourcen Speicherverwaltung: LRU in letzter Prfung PAGING-Definition auch Stellen Sie swaping und paging gegenber! SWAPPING Fragmentierung Programme auf physikalischen Adressraum beschrnkt PAGING Gre der Seitentabelle Speicher der Programme durch Breite des Adressbus

Nennen Sie 2 Mglichkeiten das Problem groer Seitentabellen zu umgehen! Invertierte Seitentabelle (Seitenrahmen Seite) Mehrstufige Seitentabelle Was ist der TLB? Spezielle Hardware meist Teil der MMU Seiten-Seitenrahmen fr die letzten verwendeten 8-64 Seiten Erlutern Sie den Working-Set Algorithmus! Der Working-Set-Algorithmus ist ein Algorithmus zur Ein und Auslagerung von Seiten in den HSP. Die Grundidee ist hierbei die Seiten zu identifizieren, die fr einen Prozess relevant sind (sogenanntes Working Set) und immer nur nicht zum Working Set gehrende Seiten auslagern. Wird ein Prozess wieder fortgesetzt wird zuerst der gesamte Working-Set wieder hergestellt. Werden die Seiten vor dem Gebrauch eingelagert nennt man das Prepaging. Zur Realisierung wird die virtuelle Zeit (seit letzter Prozessunterbrechung vergangene Zeit) und das R-Bit benutzt. Welche Paging-Strategien knnen hinsichtlich des Einlagerungsort im HSP unterschieden werden? Lokal: jeder Prozess hat einen eigenen Speicherbereich Global: Speicherbereich jedes Prozesses ist vernderlich Ein- und Ausgabe Erklren Sie den Begriff Memory-Mapped-I/O. Verfahren zur Kommunikation des Prozessors und des Controllers. Hierbei werden die ConrollerRegister auf einer Hauptspeicheradresse abgebildet dies ermglicht die Controller-Information einfach mit Hochsprachen zu manipulieren (Zeiger).

Nennen Sie die Aufgaben eines Treibers! Eingabeparameter auf Korrektheit prfen Ggf. Umrechnung der Treiberparameter Ist das Gert frei? Hardwarestatur? Befehl in Steuerregister des Controllers bertragen Dateisystem glaub nicht das da eine Frage kommt. Kapitel finde ich im Skript schlecht umgesetzt.