Grundlagen des Memory Managements: Konzepte und Methoden

Eingeordnet in Informatik

Geschrieben am in Deutsch mit einer Größe von 2,84 KB

Memory Management: Definition

Das Memory Management (Speicherverwaltung) umfasst folgende Aufgaben:

  • Programmverwaltung: Laden von Programmen in den Hauptspeicher zur Ausführung durch den Prozessor.
  • Dynamische Zuweisung: Aufteilung des Hauptspeichers auf mehrere Prozesse.
  • Effizienz: Optimale Speicherzuweisung, um Leerlaufzeiten des Prozessors zu vermeiden.
  • Speichererweiterung: Ausführung von Programmen, die größer als der physische Arbeitsspeicher sind.

Anforderungen an das Memory Management

1. Relokation

  • Fähigkeit, ein Programm in verschiedene Bereiche des Hauptspeichers zu verschieben, ohne die Speicheradressierung zu beschädigen.
  • Die Prozessor-Hardware und das Betriebssystem übersetzen logische Adressen in physische Speicheradressen.

2. Schutz (Protection)

Jeder Prozess muss vor unerwünschten Störungen durch andere Prozesse geschützt werden. Die Hardware überwacht den Zugriff und unterbricht die Ausführung bei Verletzungen.

3. Sharing (Gemeinsame Nutzung)

Ermöglicht mehreren Prozessen den Zugriff auf denselben Speicherbereich.

  • Vorteile: Gemeinsame Datenstrukturen und Zugriff auf dieselbe Programmkopie ohne Sicherheitsrisiken.

4. Logische Organisation

Programme und Daten werden in Modulen organisiert:

  • Speicher: Folge von Bytes und Wörtern.
  • Programme: Modulare Struktur.
  • Vorteile: Unabhängige Kompilierung und Ausgleichsmechanismen zwischen Modulen.

5. Physische Organisation

Organisation des Speichers in zwei Ebenen:

  • Hauptspeicher: Schnell, flüchtig, hohe Kosten.
  • Sekundärspeicher: Langsam, permanent, kostengünstig.

Technisches Management des Speichers

a) Fixe Partitionierung

Der Hauptspeicher wird in statische Partitionen unterteilt.

  • Stärken: Einfache Implementierung, geringer System-Overhead.
  • Schwächen: Interne Fragmentierung (ineffiziente Speichernutzung), da die Anzahl und Größe der Partitionen bei der Systemgenerierung festgelegt werden.

Algorithmen für die Zuweisung

  • Verteilung bei gleicher Partitionsgröße.
  • Verteilung bei unterschiedlicher Partitionsgröße: Entweder eine Warteschlange pro Partition oder eine gemeinsame Warteschlange für alle Partitionen.

b) Dynamische Partitionierung

Jeder Prozess erhält genau den Speicherplatz, den er benötigt.

  • Stärken: Keine interne Fragmentierung.
  • Schwächen: Entstehung von Speicherlöchern (externe Fragmentierung).

Verwandte Einträge: