Betriebssysteme

Kartei zur Vorlesung Bsys

Kartei zur Vorlesung Bsys


Arkadius P.
Diese Lernkarten decken fortgeschrittene Konzepte von Betriebssystemen auf Universitätsniveau ab. Sie behandeln zentrale Themen wie Prozesse, Programme, Speicherverwaltung und Scheduling, einschließlich spezifischer Algorithmen und Mechanismen wie Semaphoren, kritische Bereiche und Threads. Die Karteikarten beleuchten auch Unterschiede zwischen Windows und Unix/Linux sowie praktische Beispiele und Systemaufrufe. Ideal für Studierende und Fachleute, die ihr Verständnis von Betriebssystemen vertiefen möchten, bieten diese Karten eine strukturierte Übersicht über komplexe Systeme und deren Implementierung.
Karten
196
Lernende
9
Sprache
Deutsch
Kategorie
Informatik
Stufe
Universität
Erstellt / Aktualisiert
28.07.2014 / 02.06.2025

Lernkarten

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.

Beschreiben sie den aufbau einer FAT-Partition

Von links nach Rechts:

Bootsektor, File Allocation Table, Wurzelverzeichnis, Datencluster

Durch was wird die maxiamale Größe einer Partition bei FAT begrenz?

2^16Bit * Clustergröße = Partitionsgröße

Ist die Anzahl der Dateien im Wurzlverzeichnis einer FAT-Partition begrenzt?

Ja: Pmax = 8T

Beschreiben sie den Aufbau einer UNIX Partition

Von link nach REchts:

Bootsektor, Superblock, Allocation Bitmap, I-Node Tabelle, Daten

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

Was ist ein Speicher-Subsystem

Auslagerung der Verwaltung des Raids an externes Gerät

Was ist ein Speichernetzwerk SAN? Skizzieren sie den Aufgbau

Bei einem Speichernetzwerk SAN (Storage Area Network) geht man nun noch einenSchritt weitrer als beim Speicher-Subsystem und verbindet alle Server und Storagesysteme über ein Netzwerk.

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

Was ist das Buddy-Verfahren? Nennen Sie Vor und Nachteile

Blöckgröße nur in 2er-Potenzen allozierbar

Zerteilung und verschmelzung von angrenzenden Blöcken (buddys)

Obere Schranke zur suche nach einem Block log2maxj

Vorteil: Echtzeitfähig

Nachteil: Nur ca. 66% Speicherausnutzung

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

Was bedeutet PAgin? Skizzieren sie den Ablauf

Aufteilung des physikalischen Adressraums in Kacheln fester Größe

Aufteilung der logischen Adressräume in Seitennummern und Offset

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

Was passiert bei dem  Systemaufruf fork()?

Erzeugung eines neuen Prozesses unter Linux

Lernen