Kapitel 2 - Modelle
|
Inhalt
|
- Modelle für Betriebssysteme
- Hierarchiche Schichtenmodell
- Betriebsmittel und Instanzen
- Schalenmodell
- Modulmodell (Monolithisches Modell)
- Hierarchisches Schichtenmodell
- Client Server Modelle
|
Vor- und Nachteile von Schalen- und Modulmodellen
Schalenmodell:
- Relationen der einzelnen Schalen sind zur Umwelt nicht sichtbar
- System ist aber gut strukturiert
- Innere Schalen sind sehr gut abgeschirmt von den Äußeren
Modulmodell:
- Das Modell wird in Modulen durch Programmcode beschrieben
- die Relationen werden daher extrem komplex (quatradisch)
- Daher ist es nur bei kleinen Modellen umsetzbar
Wie ist das hierarchische Schichtenmodell aufgebaut?
Jede Schicht stellt Betriebsmittel und Dienste für den Zugriff auf die jeweilige übergeordnete Schicht bereit. Somit
kann jede Schicht auch die Betriebsmittel und Dienste darunterliegender Schichten nutzen. Eine Schicht steuert die unmittelbare
Schicht über ihr. (Steuerungshierarchie)
Bestandteile:
- Schichten
- Iterative Ordnungsrelation der Schichten (Dienste, Steuerungen bzw. Instanzen)
- Betriebsmittel
- Funktionen zum Erzeugen von Betriebsmitteln und Steuerungen
Welche Vorteile hat das hierarchisch Schichtenmodell?
- obwohl modularisiert, ist die Zahl der Relationen gering
- Kommunikation mit der Umwelt ist möglich
- Es bietet eine Infrastruktur für Instanzen (Steuerung, BM-Transformationen)
Was ist ein Betriebsmittel?
Ein Betriebsmittel ist eine abstrakte Ressource, welche über eine Adresse und einen Wert verfügt. Sie wird definiert über
- ID (eindeutiger Identifikator)
- Adressbereich (für alle möglichen Adressen des Betriebsmittels)
- Wertebereicht (aller möglichen Werte für einen Wert des BM)
- Funktion (verknüpft die abstrakten Elemente miteinander)
Der Zustand eines Betriebsmittels ergibt sich aus Wert x Adresse.
Welche Klassen von Betriebsmitteln gibt es?
- Entziehbarkeit (entziehbar wie Prozessor oder nicht wie Dateideskriptor)
- Zuteilbarkeit (gleichzeitig wie Speicher oder exklusiv wie Prozessor oder Drucker)
- Wiederverwendbarkeit (einmalig Nutzbar wie Interrupt oder mehrfach wie Prozessor oder Speicher)
- Hardware / Software (logisches oder physikalisches Betriebsmittel)
Vorgehensweise beim Erstellen eines Betriebsmittels
- ID bestimmen
- abstrakte Elemente bestimmen, welche einen Wert und eine Adresse besitzen
- Wert und Adresse festlegen
- Funktionen definieren, welche Zugriff auf alle Elemente ermöglichen
Erläutern sie die Betriebsmittelerstellung am Bsp. Hauptspeicher!
- Eine ID ist hier nicht sinnvoll, da ein von-Neumann Rechner nur einen Hauptspeicher hat.
- die abstrakten Elemente sind die ansprechbaren Speicherzellen mit Adresse und Wert.
- Der Wertebereich beträgt 0 bist 255 bei einem Byte-Orientierten Speicher
- Funktionen sind Read und Write eines Elementes zum Speicher
Was ist eine Instanz?
Eine Instanz ist ein Tupel aus id (Betriebsmittel) und einem Aktivitätstoken, welches die einzelnen Dienste ruft.
Zwischen Betriebsmitteln untereinander und zwischen Instanzen untereinander bestehen Relationen.
Wechle Klassen von Instanzen kennen Sie?
- Applikationen
- Betriebsmittel-Transformatoren
- Metasteuerungen wie PUM
Wie können Relationen zwischen Instanzen technisch hergestellt werden?
Protokolle und Schnittstellen verbinden sich Instanzen. Dabei treten beide immer zusammen auf. Eine Schnittstelle
kennzeichnet das statische Verhalten einer Relation und ein Protokoll das dynamische, d.h. die Semantik der Relation.
Als Beispiel nehmen wir einen Spooler. Hier ist die Schnittstelle ein Betriebsmittel (Speicherbuffer) und das Protokoll (Verhalten) ist als
Dienst implementiert.
Spool = Simultanously Periphal Output On Line
Es gibt datenorientierte und steuerungsorientierte Schnittstellen. Datenorientierte Schnittstellen arbeiten
ohne Synchronisation und verbrauchen viel Ressourcen (Busy Waiting). Steurerungsorientierte Schnittstellen sind
z.B. Systemcalls und Interrupts.
|
|
|
|
|
| Kapitel 1 | Einleitung |
|
Ebenen- oder Schichtenmodell, Aufgaben...
|
| Kapitel 2 | Modelle |
|
Schichtenmodell, Betriebsmittel, Instanzen...
|
| Kapitel 3 | Aktivitäten |
|
Token, Multitasking, Prozesse,Timesharing...
|
| Kapitel 4 | Kritischer Abschnitt |
|
Gegenseitiger Ausschluss,Peterson,Semaphore...
|
| Kapitel 5 | Scheduling |
|
Prozessorzuteilung, Prioritätsscheduling, RR...
|
| Kapitel 6 | Speichermanagment |
|
Freispeicherverwaltung, Segmentierung, Paging...
|
| Kapitel 7 | Seitenersetzung |
|
NRU, FiFo, Second Chance, LRU, NFU, Aging...
|
| Kapitel 8 | Deadlocks |
|
Bedingungen, Erkennung und Auflösung...
|
| Kapitel 9 | Dateisysteme |
|
Freispeicherverwaltung, Festplattenscheduling...
|
|
|
|
|
|
|
Quellen:
|
Andrew S. Tanenbaum
Computerarchitektur
|
Andrew S. Tanenbaum
Moderne Betriebssysteme
|
Petterson
Computer Architectur & Design
|
Christian Märtin
Rechnerarchitekturen
|
Kalfa
Skript und Vorlesung
|
Word Wide Web
Verschiedenste Seiten
|
|
|
|
|
|
|