Informatik (Fach) / Betriebssysteme (Lektion)
In dieser Lektion befinden sich 89 Karteikarten
WWU
Diese Lektion wurde von bibabu erstellt.
Diese Lektion ist leider nicht zum lernen freigegeben.
- Strategien Plattenspeicher: SSTF -shortest seek time first Vorteile: sehr schnell Nachteil: benachteiligt Randspuren
- Strategien für Plattenspeicher: SCAN -Wie SSTF, aber jeweils in eine Richtung Vorteile: sehr schnell Nachteile: benachteiligt Randspuren
- Strategien für Plattenspeicher: SCAN-C -Wie SCAN, jedoch nach jedem Durchlauf R¨ucksprung auf Zylinder 0 - schneller als FCFS, benachteiligt aber nicht Randspuren
- Plattenspeicherung RAID -Plattenzugriffszeiten haben sich im vgl. zu Prozessorzykluszeiten kaum verändert. -Lösung: mehrere Festplatten Parallel betreiben. Problem: sobald eine der (z.B. 7 Platten kaputt ist, ist das System kaputt) Lösung: Raid lvl 1: Platten spiegeln beim schreiben ( gespiegelte Platte kann andere Platte ersetzen. ) Raid lvl 2-6: Fehlerkorrigierende Codes werden gespeichert, um Ausfälle von Platten tolerieren zu können.
- BM Vergabe Strategien: First-Fit / Best-Fit First Fit: erster Kandidat der reinpasst, wird genommenBest fit: freie Restkapazität wird minimiert Nachteil: Programme mit großen Anforderungen können verhungern Lösung: immer nur Fenster der Warteliste angucken, wenn 1. auf Warteliste nicht dran kommt, Fenster um 1 reduzieren
- Deadlock Warteliste:notwendige & hinreichende Bedingungen 1. Wechselseitiger Ausschluss: BM werden exklusiv genutzt2. Hold-and-wait: Prozess darf BM besitzen und auf andere BM warten3. Keine Verdr¨angung: Prozess gibt BM nur freiwillig ab4. Zyklische Wartesituation: Kette aufeinander wartender Prozesse, d.h. jeder besitzt ein BM, das vom n¨achsten in der Kette ben¨otigt wird
- Betriebsmittelgraph: Reduktionen Ein BM-Graph heißt reduzierbar, wenn es einen Prozess gibt, der ihn reduzieren kann (d. h. der alle angeforderten BMs h¨alt und somit nicht blockiert wird, und deshalb irgendwann endet und BMs freigibt) Der BM-Graph heißt vollst¨andig reduzierbar, wenn es eine Folge von Reduktionen gibt, so dass am Ende alle Kanten des Graphen entfernt sind. Verklemmungstheorem: Eine Betriebsmittelsituation S ist verklemmt genau dann, wenn der dazugeh¨orige BM-Graph nicht vollst¨andig reduzierbar ist.
- 4 Möglichkeiten Deadlocks zu behandeln Verhindern/vorbeugen (prevention)Vermeiden (avoidance)Erkennen und beheben (detection)Ignorieren
- Verklemmungsvorbeugung (3) 1. Summenbelegung (preclaiming)Sämtliche jemals ben¨otigten BM werden einmalig zu Beginnangefordert (somit ist die hold-and-wait Bedingung nicht erfullt) 2. Totalfreigabe bei jeder Belegung 3. Belegung gemäß vorgegebener Ordnung
- Verklemmungsvermeidung -man geht nur in sichere Situationen -sichere situationen sind welche, von denen aus man mit folge von BM zuteilungen alle Prozesse garantiert zu ende bringen kann - man muss die restanforderungen der prozesse kennen
- Speicherverwaltung BS Funktion (3) verfolgt welche Speicherbereiche (nicht) benutzt werden teilt Prozessen Speicher zu, und gibt ihn nachher wieder frei verwaltet die Auslagerung von Speicher auf die Festplatte
- Aufbau eines logischen Adressraums von Hohen Adressen zu niedrigen: Programmtext: Maschinencode des ausgefuhrten Programms ¨ Statische Daten: Programmkonstanten (z. B. konstante Zeichenketten) Heap: globale Daten, die nicht Teil einer Funktion sind (globale Variablen) Stack: lokale Daten von Funktionen (Rucksprungadressen, lokale Variablen, Parameter)
- Relative Adressierung Das Programm enth¨alt auch nach dem Laden in Hauptspeicher nur relative Adressen (logischer Adressraum beginnt bei 0). Der Prozessor enth¨alt ein Basisadressregister, das auf die Anfangsadresse gesetzt wird und bei jedem Speicherzugriff zur relativen Programmadresse dazuaddiert wird, um die Speicheradresse zu bilden. Logische AR werden also auf zusammenh¨angende Teile des physischen AR abgebildet. Vorteile: Dynamisches umspeichern möglichProblem: Externer Verschnitt(Fragmentierung)
- Speicherschutz durch Speichertrennregister Bei Mehrprogrammbetrieb und relativer, zusammenh¨angender Adressierung belegt ein Programm einen zusammenh¨angenden Speicherbereich, dessen Anfang und Ende uberpr ¨ uft werden m ¨ ussen. ¨ Statt eines Speichertrennregisters werden zwei ben¨otigt: das Basisregister gibt den Anfang, das Grenzregister das Ende des Programmadressraumes an
- Streuende Adressierung Der Logische Adressraum wird in kleinere Stucke zerlegt, ¨ die unabh¨angig voneinander im Speicher abgelegt werden, dadurch:+: Bessere Ausnutzung von Lucken (geringerer externer Verschnitt) ¨–: H¨oherer Aufwand beim Adressierenpassiert durch Memory Managment Unit ( MMU ) im Prozessor
- Seitentabelle Wo? Basisadresse im RegisterSeitentabelle im Hauptspeicher
-
- Segmentadressierung -Variable Größe der Pages-Segmenttabelle muss volle Adressen aufnehmen können
- Probleme Seiten/Segmentadressierung und Lösung Problem: Segment- und Seitentabellen passen nicht in Prozessorregister und mussen deshalb im Hauptspeicher untergebracht werden. ¨ Um eine effektive Hauptspeicheradresse zu bilden, muss also zun¨achst die Seiten/Segmentadresse aus dem Hauptspeicher geladen werden Fur jeden Zugriff (Befehl oder Daten) sind damit mindestens zwei ¨ Hauptspeicherzugriffe erforderlich. Dadurch halbiert sich in etwa die Verarbeitungsgeschwindigkeit. Lösung: ausnutzung der Lokalität, aktuell benötigte teile der Segment/seitentabelle wird in einem schnellen registersatz gespeichert: TLB = Translation Lookaside Buffer
- Voraussetzungen fur Virtuellen Speicher Gestreute Adressierung (Seitentabellen) Automatisches Erkennen der Seitenabwesenheit im Hauptspeicher Zugriff auf nichtvorhandene Seite l¨ost Unterbrechung aus. Einlagerung der Seite – im Rahmen der Unterbrechungsbehandlung.
- Datenstrukturen für virtuelle Speicher: Seitentabelle VS Kacheltabelle Seitentabelle (page table) Funktion: Adresstransformation Inhalt fur jede Seite: Nutzungs- und Pr ¨ ¨asenzinformation, Physikalische Adresse (Kachelnummer) Problem: Seitentabelle kann riesengroß werden: z.B. im 64-Bit-Computer mit 4 KB großen Seiten ⇒ 2^52 Eintr¨age, d.h. bei 8 Byte pro Eintrag wird die Seitentabelle 30 · 106 GB groß!!! Kacheltabelle (page frame table, inverted page table) Funktion: Speicherverwaltung (Alternative zu Seitentabelle) Inhalt fur jede Kachel: Zustand (frei / belegt), Prozeß-Besitzer, belegende Seite Vorteil: viel weniger Platz n¨otig als fur Seitentabelle ¨ Nachteil: bei jedem Speicherzugriff muss die Gesamttabelle nach dem Eintrag (Prozess, Seitennummer) durchgesucht werden L¨osung: Benutzung des TLB (s.o.), die Suche wird lediglich dann durchgefuhrt wenn die Seite nicht im TLB liegt
- was enthält Eintrag von Seitentabelle fur virtuellen Speicher Jeder Eintrag entählt zusätzlich zur Phsyaklischen Adresse Informationen ob: die Seite im Hauptspeicher vorhanden ist: auf die Seite kurzlich zugegriffen wurde: die Seite ver¨andert wurde (Schreibzugriff)
- Optimale Auswahlstrategie für Seiten (Speicherverwaltung ) ”W¨ahle (zum Auslagern) die Seite, die am l¨angsten nicht mehr ben¨otigt werden wird" nicht möglich, zukünftige Referenzen nicht bekannt
- Seitenauswahlstrategie um zu Virtuelisieren: LFU -least frequently used -Der LFU-Algorithmus unterh¨alt fur alle Seiten einen Z ¨ ¨ahler, der bei jedem Zugriff inkrementiert wird.
- Seitenauswahlstrategie um zu Virtuelisieren: LRU -least recently used -Man kann dies leicht mit einem Stapel (stack) realisieren, bei dem die jungst zugegriffene Seite oben auf den Stapel gelegt wird
- Seitenauswahlstrategie um zu Virtuelisieren: RNU -Recently not used -RNU ist ¨ahnlich wie LRU, arbeitet jedoch mit einem festen ”Zeitfenster“ der L¨ange k, das uber die Referenzfolge geschoben wird.
- Second-Chance-Algorithmus (Clock-Algorithmus) Der Vektor der Referenzbits wird zyklisch durchlaufen (“Uhrzeiger”). Bei der Suche nach einem Kandidaten wird zum Auslagern die n¨achste Seite gew¨ahlt, deren Referenzbit 0 ist. Im Zuge dieser linearen Suche werden alle besuchten Referenzbits von 1 auf 0 zuruckgesetzt. Ausgelagert wird also eine Seite, die seit dem letzten Durchlauf des Auswahlzeigers nicht mehr wieder referenziert wurde.
- Thrashing-Effekt wenn zuviele Programme gleichzeitig arbeiten, müssen die seiten zu oft getauscht werden. ( theoretisch gute prozessorauslastung aber durch zu viele seitenaustäusche zu langsam )
- Lokale Regelung der Seitentauschaktivit¨at: Working set modell auf wieviele seiten hat er letztes zeitfenster zugegriffen? seiten außerhalb working set, werden automatisch entfernt
- Regelung der Seitentauschaktivit¨at: Page-Fault-Frequency-Modell (PFF) -Seitenfehlerrate des Programms wird gemessen, danach wird geregelt
- virtuelles vs physikalisches Dateisystem Virtuelles = im flüchtigen speicherphysikalisches = auf einem Datenträger
- Struktur einer Partition Bootblock | Superblock | Freispeicherverw. | I-Nodes | Wurzelverz. | Dateien und Verzeichnisse
- I-Nodes Jede Datei hat einen I-Node bestehend aus: Besitzer (UID – Benutzernummer, GID – Gruppennummer) Rechte (Lesen, Schreiben, Ausfuhren) ¨ Erzeugungsdatum, Datum der letzten Anderung ¨ Gr¨oße in Bytes Typ-Feld (Datei, Verzeichnisdatei, Ger¨at, . . . ) Verweise auf die Datenbl¨ocke
-
- Hard vs. Symbolic Links(soft links): hard link: Es gibt einen anderen Verzeichniseintrag der auf dieselbe Datei verweist. Der I-Node-Eintrag ist derselbe fur alle hard links. Jeder neue hard link erh¨oht den link counter im I-Node der Datei. Ein remove() dekrementiert den link counter und entfernt den Verzeichniseintrag Solange der link counter 6= 0, bleibt die Datei nach einem remove() bestehen. Symbloc link (soft link ): Symbolische Links werden bei jedem Zugriff ausgewertet. Wird die Datei gel¨oscht, so zeigt der Pfadname ” ins Leere“, d. h. der Link wird ungultig. ¨ Man kann symbolische Links auch auf solche Dateien oder Verzeichnisse definieren, die noch nicht oder nicht mehr existieren.
- Physische vs logische Sicherung (Dateisystem) Physische Sicherung: Vom Block 0 bis zum letzten Block. Einfach und schnell, aber sehr unflexibel, wird selten benutzt Logische Sicherung: Beginnt bei einem Verzeichnis und sichert rekursiv alle Dateien und Verzeichnisse, die sich dort seit einem gewissen Bezugsdatum ge¨andert haben
- Computer und Netzsicher 4 Grundlegende Anforderungen Vertraulichkeit: Nur berechtigte Parteien bekommen einen Lesezugriff auf Informationen (Drucken, Anzeigen, etc.) Integrit¨at: Betriebsmittel durfen nur von berechtigten Parteien ¨ ge¨andert werden (Schreiben, L¨oschen, Andern des Status) ¨ Verfugbarkeit ¨ : Betriebsmittel und Informationen sind fur berechtigte Parteien immer verfugbar ¨ Authentizit¨at: Computersystem kann die Identit¨at jedes einzelnenBenutzers feststellen
- Schutzdomänen Eine Dom¨ane (auch Schutzdom¨ane genannt) ist eine Menge von Paaren (Objekt, Rechte) – dieses Konzept wird eingefuhrt, um verschiedene Schutzmechanismen untersuchen zu k¨onnen Ein Recht bedeutet die Erlaubnis, bestimmte Operationen auf dem gegebenen Objekt der Dom¨ane auszufuhren Jeder Prozess l¨auft zu jedem Zeitpunkt in einer Schutzdom¨ane, d. h. es gibt eine Menge von Objekten, auf die er zugreifen kann
- Zugriffskontrolllisten (ACL) Zu jedem Objekt wird eine geordnete Zugriffskontrolliste (ACL) gefuhrt, mit allen Dom ¨ ¨anen, die auf das Objekt zugreifen k¨onnen Fur jede Dom ¨ ¨ane wird angegeben, wie der Zugriff erfolgen darf Die Zugriffsrechte (R/W/X) werden nach Benutzern (oder Gruppen von Benutzern) und nicht nach Prozessen vergeben
- Zugriffskontrolllisten Capabilities jedem Prozess wird seine Dom¨ane zugeordnet, dieseListe wird Capabilities-Liste oder C-Liste genannt C-Listen mussen vor der Manipulation durch Benutzer gesch ¨ utzt werden, dazu gibt es verschiedene Ans¨atze
- ACLs vs. Capabilities Capabilities sind sehr effizient: z. B. ist keine Uberpr ¨ ufung notwendig, wenn ein Prozess eine Datei ¨offnen will, auf die Capability 3 zeigt; bei einer ACL erfordert dies eine potentiell lange Suche Wenn keine Gruppen unterstutzt werden, muss man alle Benutzer in der ACL auflisten, um jedermann Lesezugriff auf eine Datei zu gew¨ahren ACLs erm¨oglichen es, Prozesse in ihren Rechten einfach zu beschr¨anken, Capabilities hingegen nicht Wird ein Objekt gel¨oscht und die Capabilities nicht (oder umgekehrt), dann entstehen Probleme. Hingegen leiden ACLs darunter nicht
