Grundlagen des Speichermanagements in Betriebssystemen: Ziele, Adressierung und Fragmentierung
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 3,31 KB
Grundlagen des Speichermanagements in Betriebssystemen
Ziele des Speichermanagements
Zum Vergleich werden die Arten von Betriebssystemen basierend auf ihrem Speicher-Manager betrachtet. Ein weiteres Ziel ist die Analyse der Maschinenleistung im Hinblick auf ihre Probleme und die Nachfrage nach Speicherzuweisung im Betriebssystem (OS).
Definitionen im Speichermanagement
- Memory Management: Besteht aus dem Hauptspeicher, der als lineare Anordnung von Speicherorten von jeweils einem Byte Größe betrachtet werden kann.
- Zugriffszeit (Access Time): Die Zeit zwischen dem Beginn und dem Ende eines Lese- oder Schreibvorgangs.
- Memory Cycle Time: Die hardwarebedingte Verzögerung zwischen dem Ende eines Vorgangs und dem Beginn des nächsten Vorgangs.
- Adresse (Address): Der physische Speicher kann als eine Abfolge von Bytes oder Wörtern betrachtet werden, die jeweils eine eigene Adresse besitzen, sodass direkt darauf zugegriffen werden kann.
Typen von Speichersystemen
Nackte Maschine (Bare-Metal Computer)
Computer ohne Betriebssystem (OS).
Dedizierter Speicher (Dedicated System)
Wird als dediziertes System bezeichnet, bei dem der Programmierer direkt auf die Hardware zugreift und den Speicher in seinen Programmen verwaltet.
Resident Monitor (Residenz-Monitor)
Zu Beginn der Betriebssysteme, um eine bessere Hardware-Nutzung zu erzielen, wurde der Speicher in zwei Bereiche unterteilt: Einer wurde vom Benutzer verwendet und der andere war der residente Teil des Betriebssystems, allgemein bekannt als Monitor.
Speicherschutz und Adress-Remapping
- Speicherschutz: Stellt sicher, dass das Monitor-Programm und das Benutzer-Programm den Speicher gemeinsam nutzen.
- Remapping-Adresse (Address Remapping): Beim Initialisieren des Betriebssystems wird der Inhalt des Datensatzes festgelegt, der die Grenze definiert, jenseits derer das Benutzer-Programm geladen werden darf.
Umlagerung (Relocation)
- Statische Umlagerung: Erfolgt während der Kompilierung oder beim Laden des Programms in den Arbeitsspeicher.
- Dynamische Umlagerung: Erfolgt während der Programmausführung.
Physischer Adressraum (Physical Address Space, mr)
Das Betriebssystem stellt die korrekte Entsprechung zwischen der relativen Adressbeschreibung und der tatsächlichen Adresse her.
Partitionierung des Speichers
Feste Partitionen
Der Speicher ist in Partitionen fester Größe unterteilt (die Größe der einzelnen Partitionen kann unterschiedlich sein).
- Fragmentierung: Verschwendeter Speicher.
- Interne Fragmentierung: Entsteht durch die Größen-Differenz zwischen der Speicherpartition und dem darin befindlichen Objekt.
- Externe Fragmentierung: Entsteht durch den nicht nutzbaren Speicher zwischen den Partitionen.
Variable Partitionen
Als Reaktion auf die Nachteile fester Partitionen wurde eine deutliche Verbesserung angestrebt: Arbeitsplätze sollten so viel Platz in Anspruch nehmen, wie sie benötigen (aber nicht den gesamten Speicher).