Paging beschreibt eine Methode zur Verringerung von externer Fragmentierung.
Funktionsweise
Dabei wird der physikalische Speicher in Blöcke fixer Größe, sogenannte Frames aufgeteilt. Der logische Speicher wird in gleichgroße Pages aufgeteilt. Jede Page wird auf einen Frame abgebildet.
Framegrößen
Die Größe von Frames ist typischerweise eine Zweierpotenz zwischen
und Bytes.
Fragmentierung
Zwar verringert Paging externe Fragmentierung, doch kommt es wegen der fixen Pagegröße zu interner Fragmentierung.
Das Betriebssystem “führt Buch” über alle freien Frames. Meist ist das eine Liste, wo z.B. steht “Zur Page abc gehört Frame 45 xyz”. Dabei hilft ein page table.
Benötigt ein Programm Speicher, so muss das Betriebssystem genug Frames finden.
Siehe auch
Adressschema
Die von der CPU generierten Adressen beinhalten…
- Seitennummer (p) - Dient als Index für die page table und liefert die Basisadresse
- Seiten-Offset (d) - Dient zur Auffindung des Speicherinhalts und wird auf die Basisadresse addiert
Prozessspezifischer Zugriffsschutz
An jeden Frame wird ein Flag, das sogenannte valid-invalid Bit angefügt. Diese Bits stehen hinter den Einträgen der Page Tables der Prozesse
- valid (v) - Zeigt an, dass eine Seite zum logischen Adressraum des Prozesses gehört, dem der Page Table zugeordnet ist
- invalid (i) - Zeigt an, dass eine Seite nicht zum logischen Adressraum gehört und der Prozess, dem die Page Table mit diesem Eintrag zugeordnet ist, folglich nicht auf die Seite zugreifen darf
Paging Hardware

Siehe auch