Virtueller Speicher, Segmentierung und Speicherverwaltung in Dateisystemen

InformatikAktualisiert am 4,55 KB

Zusammenfassung

Der Text erläutert die Segmentierung im virtuellen Speicher, die Adressübersetzung mit Segmenttabellen sowie Lade-, Platzierungs- und Ersetzungsstrategien. Außerdem werden der physische Aufbau einer Festplatte, ihre Leistungsmerkmale und die Verfahren zur Speicherplatzzuteilung in Dateisystemen beschrieben. Abschließend behandelt er die Zugriffsmethoden auf Dateien: sequenziell, direkt und indiziert-sequenziell.

Kernpunkte

  • Bei der Segmentierung sind die Speicherbereiche in der Größe anpassbar und entsprechen logischen Programmteilen wie Daten- oder Codestücken.
  • Jeder Eintrag der Segmenttabelle enthält Presence-Bit, Segmentadresse auf dem Datenträger, Startadresse im Speicher und Länge.
  • Demand-Fetching lädt eine Seite oder ein Segment erst bei expliziter Anforderung, Vorabbeschaffung versucht, den Bedarf im Voraus zu bestimmen.
  • Die Suchzeit ist die Zeit, die der Kopf für den Wechsel zur Zielspur benötigt; die Latenz ist die Wartezeit, bis der gewünschte Sektor unter dem Kopf liegt.
  • Bei der verketteten Belegung zeigt jeder Block auf den nächsten, bei der indizierten Belegung verweist ein Index-Block auf alle Datenblöcke einer Datei.
  • Der sequenzielle Zugriff durchläuft Datensätze nacheinander, der direkte Zugriff erreicht jeden Datensatz unmittelbar.

Stellen Sie sich auf die Probe

Virtueller Speicher und Segmentierung

Bei der Segmentierung im virtuellen Speicher sind die Speicherplätze in ihrer Größe anpassbar (resizable). Die Segmentierung nutzt die Tatsache aus, dass Programme in logische Teile, wie zum Beispiel Daten- oder Codestücke, unterteilt sind. In diesem Fall wird das Programm zusammen mit seinen Daten in eine Reihe von Segmenten unterteilt.

Die Adressübersetzung erfolgt ähnlich wie beim Paging, wobei die variable Größe der Segmente durch eine Segmenttabelle gesteuert wird. Jeder Eintrag in dieser Tabelle sollte das Presence-Bit (Wohn-Bit), die Segmentadresse auf dem Datenträger, die Startadresse im Speicher sowie die Länge des jeweiligen Segments enthalten.

Das Betriebssystem (OS) verwaltet für jeden Prozess eine eigene Segmenttabelle. Die Anfangsadresse dieser Tabelle wird in einem Hardware-Register gespeichert, dem sogenannten Resource Origin Table Block (ROTB).

Ladestrategien (Fetch-Strategien)

Diese Strategien bestimmen, wann eine Seite oder ein Segment vom Sekundärspeicher in den Primärspeicher übertragen wird:

  • Demand-Fetching (Anforderungsstrategie): Ein laufender Prozess wartet, bis eine Seite oder ein Segment explizit angefordert wird, bevor die Übertragung erfolgt.
  • Vorabbeschaffung (Antizipative Strategie): Es wird im Voraus versucht zu bestimmen, welche Seiten oder Segmente demnächst benötigt werden.

Demand Paging: Diese Technik erfordert Hardware-Unterstützung (Präsenz-Bit).

Platzierungs- und Ersetzungsstrategien

Platzierungsstrategien (Placement Strategies): Sie bestimmen, an welcher Stelle im Hauptspeicher eine eingehende Seite oder ein Segment platziert werden soll, also wie viel Speicher zu reservieren ist.

Ersetzungsstrategien (Replacement Strategies): Diese werden genutzt, um zu entscheiden, welche Seite oder welches Segment verschoben werden muss, um Platz für neue Daten zu schaffen, wenn der Hauptspeicher voll belegt ist.

Physikalische Speicherung von Daten

  • Track (Spur): Konzentrische Kreise, die den Speicherplatz aufteilen.
  • Sektoren: Unterteilung der einzelnen Spuren.
  • Zylinder: Ein logischer Zusammenschluss mehrerer paralleler Spuren über verschiedene Speicherflächen hinweg.
  • Platten (Platter): Die eigentlichen physischen Speicherbereiche.
  • Schreib-/Lesekopf (Head): Physische Einheiten, die den Schreib- und Lesevorgang durchführen.

Leistungsmerkmale von Festplatten

Suchzeit (Seek Time): Die Zeit, die ein Kopf benötigt, um von einer Spur zur nächsten zu gelangen. Sie hängt von der Entfernung zwischen der aktuellen Position und der Zielspur ab.

Latenz oder Rotationsverzögerung: Die Zeit, die verstreicht, bis der gewünschte Sektor unter dem Kopf erscheint.

Disk-Cache: Ein Puffer (Buffer) im Hauptspeicher für Sektoren der Festplatte. Der Cache enthält Kopien bestimmter Festplattenbereiche.

Speicherplatzzuteilung

  • Zusammenhängende Belegung (Contiguous Allocation): Beim Erstellen einer Datei werden zusammenhängende Blöcke zugeordnet. Das Verzeichnis enthält den Dateinamen, die Startblockadresse und die Gesamtgröße der Datei.
  • Verkettete Belegung (Linked Allocation): Die Zuordnung besteht aus einzelnen Blöcken, die nicht notwendigerweise kontinuierlich liegen. Jeder Block enthält einen Zeiger auf den nächsten. Das Verzeichnis enthält den Dateinamen sowie die Adressen des Start- und Endblocks.
  • Indizierte Belegung (Indexed Allocation): Das Verzeichnis ist in einem Index-Block für jede Datei gespeichert, der Verweise auf alle zugehörigen Datenblöcke enthält. Beim Lesen einer Datei erfolgen zwei Zugriffe: einer auf den Index-Block und ein weiterer auf die gewünschte Adresse.

Zugriffsmethoden in Dateisystemen

  • Sequenzieller Zugriff: Die Datensätze einer Datei werden nacheinander durchlaufen, bis der gewünschte Datensatz erreicht ist.
  • Direkter Zugriff: Ein unmittelbarer Zugriff auf jeden beliebigen Datensatz ist möglich.
  • Indiziert-sequenzieller Zugriff: Jede Datei besitzt eine Tabelle von Zeigern, wobei jeder Zeiger auf die Adresse eines Index-Blocks verweist.

Herunterladen

PDF Word HTML

Häufige Fragen

Was ist der Unterschied zwischen Demand-Fetching und Vorabbeschaffung?

Beim Demand-Fetching wartet der Prozess, bis eine Seite oder ein Segment explizit angefordert wird. Bei der Vorabbeschaffung wird im Voraus versucht zu bestimmen, welche Seiten oder Segmente demnächst benötigt werden.

Was enthält ein Eintrag in der Segmenttabelle?

Jeder Eintrag enthält das Presence-Bit, die Segmentadresse auf dem Datenträger, die Startadresse im Speicher und die Länge des Segments.

Was ist die indizierte Belegung?

Das Verzeichnis speichert für jede Datei einen Index-Block mit Verweisen auf alle zugehörigen Datenblöcke. Beim Lesen sind daher zwei Zugriffe nötig: einer auf den Index-Block und einer auf die gewünschte Adresse.

Stellen Sie sich auf die Probe

Lernkarten

Tippen Sie auf eine Karte, um die Antwort zu sehen.

Test

1. Woran orientiert sich die Segmentierung im virtuellen Speicher?
2. Wie heißt das Hardware-Register, in dem die Anfangsadresse der Segmenttabelle gespeichert wird?
3. Was beschreibt die Suchzeit (Seek Time) einer Festplatte?
4. Was zeigt bei der verketteten Belegung jeder Block?
5. Welche Zugriffsmethode durchläuft die Datensätze nacheinander?
6. Was ist ein Zylinder laut Text?

Mit KI aus dem Dokument erstellte Fragen: Prüfen Sie die Antworten anhand des Textes.