Home

Speicherverwaltung

Speicherverwaltung beschreibt die Gesamtheit der Verfahren, mit denen ein Computersystem den nutzbaren Hauptspeicher den laufenden Prozessen zuweist, freigibt, schützt und effizient nutzt. Zentral ist die Trennung von Speicherbereichen, damit Prozesse sich gegenseitig nicht stören, sowie die möglichst effiziente Ausnutzung des physischen Speichers.

Eine zentrale Rolle spielt der virtuelle Speicher. Dabei wird der von der Prozessadresse verwendete Adressraum durch

Techniken der Speichervergabe umfassen statische und dynamische Zuweisung, Allokationsstrategien wie First-Fit, Best-Fit oder Buddy-Systeme sowie Speichermanagement-Allocatoren

Für Programme mit automatischer Speicherverwaltung (Garbage Collection) verwalten Laufzeitumgebungen wie Java, .NET, Python Speicher automatisch und

Herausforderungen der Speicherverwaltung sind Fragmentierung, Verwaltungs-Overhead, Leistungsaufwand für Speicherzugriffe und Schutzmechanismen gegen Speicherverletzungen. Insgesamt ist effektive

eine
Speicherverwaltungseinheit
in
physischen
Speicher
abgebildet.
Typische
Konzepte
sind
Paging
und
Segmentierung;
Seiten-
und
Segmenttabellen,
Translation
Lookaside
Buffers
(TLB)
und
Bedarfslaufwerke
(Demand
Paging).
Durch
Swapping
kann
bei
Bedarf
auch
Teile
des
Speichers
auf
Sekundärspeicher
ausgelagert
werden,
um
den
physischen
Speicher
freizuhalten.
(Slab,
Arenas).
In
modernen
Betriebssystemen
wird
Speicher
oft
in
Kernel-
und
Benutzerspeicher
aufgeteilt
und
durch
Freigabe-
und
Kompaktierungsmechanismen
wie
Defragmentierung
oder
Speicherkompaktierung
optimiert.
reinigen
nicht
mehr
referenzierte
Objekte.
In
Sprachen
wie
C
oder
C++
liegt
die
Verantwortung
beim
Entwickler
oder
bei
speziellen
Allocatoren.
Speicherverwaltung
eine
grundlegende
Voraussetzung
für
Systemleistung,
Stabilität
und
Sicherheit
von
Computersystemen.