Betriebssysteme
Kartei zur Vorlesung Bsys
Kartei zur Vorlesung Bsys
-
- 1 / 196
-
Cartes-fiches
Was ist die Aufgabe eines Logic-Volume-Managers?
Zwischenschicht, die im Betriebssystem zwischen Festplattentreiber und Dateisystem liegt. Damit lassen sich logische Partitionen aus einzelnen Teilen mehrerer physikalischen Partitionen zusammensetzen.
Durch was wird die maxiamale Größe einer Partition bei FAT begrenz?
2^16Bit * Clustergröße = Partitionsgröße
wozu dient der Superblock bei UNIX Partitionen?
Er enthält folgende Verwaltungsinformationen:
- Größe des Dateisystems
- Anzahl freier Blöcke
- Zeiger auf liste der freien Blöcke
- Zeiger auf den ersten freien Block in der liste der freien Blöcke
- Größe der I-Node liste
- Anzahl freier I-Nodes
- Zeiger auf Liste der freien I-Nodes
- ...
Was ist eine I-Node bei UNIX Partitionen ?
Ein Inode ist die grundlegende Datenstruktur zur Verwaltung vonDateisystemen mit unixartigen Betriebssystemen. Jeder Inode wird innerhalb einer Partition eindeutig durch seineInode-Nummer identifiziert. Jeder Namenseintrag in einem Verzeichnis verweist so auf genau einen Inode. Dieser wiederum verweist auf genau eine Datei oder ein Verzeichnis.
Was ist ein Journaling Dateisystem?
Alle änderungen werden protokolliert. Änderungen können zurückgenommen werden, Transaktionsverhalten.
Was bedeutet RAID?
Reduntant Array of Independent Disks
Welche Raid Level kennen Sie?
- Raid0: Stripping (mehrere Disks werden zu einer zusammengefasst)
- Raid1: Mirroring Daten werden auf 2 Disks identisch gespeichert
- Raid4: Byte-Level-Parity (eine Parity Disk)
- Raid5: Interleave PArity wie Raid4 nur einteilung der Disks in einzelne Abschnitte (aus Lastgründen)
Wo wird die Raid-Information berechnet?
Auf Raid-Controllern, für das Betriebssystem erscheint nur eine logische Disk
Welche Vorteile (und Nachteile) bietet ein SAN gegenüber dedizierten eingebauten Festplatten?
Vorteile: Redundanz
Nachteile: Großer Hardwareaufwand
Beschreiben sie den Aufbau des Adressraumes aus Programmsicht
Beim Start eines Programms ist der logische Adressraum in Segmente aufgeteilt
Nennen sie den Namen und die Aufgaben der einzelnen Teilbereiche des Adressraumes eines Prozesses
(6 Stück)
- Programmcode (Text)
- Datenbereich Initialisierte Variablen (Data)
- Datenbereich Nichtinitialisierte Variablen (BSS)
- Dynamische Variablen (HEAP wachstum nach oben)
- Lokale Variablen (Stack wachstum nach unten)
- Kernelbereich
Welche bedeutung hat der brk Zeiger be UNIX?
Gibt die Obere Grenze des Heaps an
Wer verwaltet bei Unix und bei Windows die innere Struktur des Heaps?
Garbage-Collection
Was verstehen Sie unter Garbage-Collection
Verlagerung des Freigebens von Speicher vom Anwender auf das Betriebssystem
Nennen und beschreiben sie zwei Algorithmen zur Freispeichersammlung.
Mark and Sweep: Vom Root ausgehend alle gefundenen blöcke markieren, unmarkierte Blöcke löschen
Reference Counting: Referenzzähler auf Objekten, wenn Referenz = 0 ist > Freigeben des Speichers/ Objekt löschen
Was ist Fragmentierung?
Fragmentierung bedeutet, dass der Speicher zerstückelt ist.
Nennen Sie den Unterschied zwischen externer und interner Fragmentierung
Ext: Es steht genügend Speicher zur Verfügung aber kein Block ist groß genug. Ein Programm erwartet den Speicher immer am Stück
Int: Es wird mehr Speicher belegt als angefordert war.
Was kann man gegen externe Fragmentierung tun? Welche Vorraussetzungen sind dazu notwendig?
Verschieben der belegten Blöcke an eine Stelle, so dass genügend Speicher am Stück frei ist.
Vorraussetzung: Speicher wird nur über handels adressiert, eswird typensichere Programmiersprache verwendet
Was kann man tun wenn Programme und Daten größer als der physikalische Adressraum sind? Beschreiben Sie den Vorgang
Auslagern nicht benötigter Teile des Adressraumes auf externen Speicher
Was kann man tun wenn Programme und Daten größe rals der logische Adressraum sind? Beschreiben sie den Vorgang mit und ohne MMU
Einblenden von mehr physikalischen Speicher auf die gleiche Adresse
Was bedeutet Segmentierung?
- Ein Segment ist ein Ausschnitt des (physikalischen) Adressraums mit beliebiger Länge
- Mehrere Segmente können sich überschneidenNutzung von Segmentregistern
Wie wird mit Hilfe von PAging eine logische Adresse in eine physikalische Adresse umgesetzt?
Aus dem PAging Directory den index für die verwendete PAging-Tabelle auslesen > In der PAgingtabelle mithilde des Index die Basisadresse auslesen > Basisadresse mit dem Offset verrechnen/verknüpfen um die physikalische Adresse zu bekommen
Wie Groß ist die pagingtabelle bei einstufiger Umsetzung und 32-Bit Adressen?
32 Bit - 12 Bit Offset = 20
2^20 Einträge!
Was wird in den unteren 12 Bits eines Pagingtabelleneintrags gespeichert?
Zusatzinfos (Present, Accessed, Modified, Read-Only,...)
Nennen Sie einige Algorithmen zur Seitenersetzung bei Paging
6 Stück
- FIFO
- Second Chance
- Not RecentlyUsed (NRU)
- Least Frequently Used (LRU)
- Not Frequently USed (NFU)
- Aging
Wie lautet der optimale Algorithmus zur Seitenersetzung bei PAging?
Die Seite, die am längsten nicht mehr gebraucht wird, wird ersetzt.
Was ist eine Workingset?
Unter Workingset versteht man die Menge aller einem Prozess zugewiesenen physikalischen Speicherseiten
Was ist ein Referenzstring?
Für jeden Speicherzugriff wird edie Nummer der Seite vermerkt und angefügt
Was ist ein Prozess?
Ein Prozess ist ein Programm während der Ausführung
Welche Bestandteile hat ein Prozess?
4 Stück
- Programm-Image
- Adressraum
- Threads
- Systemresourcen
Beschreiben sie den Vorgang beim starten eines Prozesses
Vom Betriebssystem wird ein Prozess erzeugt, wenn ein Programm gestartet wird
- Beschreiben sie die Semantik bei UNIX Prozesses
- Jeder Prozess hat eine systemweit eindeutige Prozess ID (pid)
- Jeder Prozess hat genau einen Elternprozess (parent prozess id ppid)
- Ein neuer Prozess wird durch Kopie eines bestehenden Prozesses erzeugt