[gesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 20: | Zeile 20: | ||
</p> | </p> | ||
<p> | <p> | ||
Auf Frage | Auf die erste Frage gibt es eine ganz einfache Antwort: Das R-Bit. | ||
</p> | </p> | ||
{{#index:NRU, Seitenersetzungsalgorithmus|Not Recently Used Seitenersetzungsalgorithmus}} Der Not Recently Used Seitenersetzungsalgorithmus, kurz NRU, ersetzt immer eine Seite, auf die in letzter Zeit nicht zugegriffen wurde.
Die Idee dahinter ist: Wenn in letzter Zeit nicht auf die Seite zugegriffen wurde, dann wird vermutlich auch in (naher) Zukunft nicht darauf zugegriffen werden müssen.
Um dieses Verfahren zu implementieren, müssen zwei Fragen oder Probleme gelöst werden:
Auf die erste Frage gibt es eine ganz einfache Antwort: Das R-Bit.
In den Seitentabellen wird eine zusätzliche Spalte eingeführt, siehe Abbildung unten. Für jede einzelne Seite (d.h. in jedem Seitentabelleneintrag) wird mit Hilfe eines einzelnen Bits festgehalten, ob die betreffende Seite referenziert wurde.
{{#index:Referenziert-Bit|Seitentabelleneintrag, Referenziert-Bit|R-Bit|Seitentabelleneintrag, R-Bit}} Man spricht hier vom sogenannten Referenziert-Bit, oder kurz vom R-Bit.
Es liegt auf der Hand, dass das R-Bit (genau wie das M-Bit) beim Einlagern einer virtuellen Seite in einen Seitenrahmen im betreffenden Seitentabelleneintrag mit 0 initialisiert wird.
Die MMU nimmt später bei der (erfolgreichen) Umrechnung einer virtuellen in eine physikalische Adresse ein Setzen des R-Bits im betreffenden Eintrag der Seitentabelle vor.
to do: 4 Klassen
Klasse 1: Eingelagerte Seiten mit R=0 und M=0.
Klasse 2: Eingelagerte Seiten mit R=0 und M=1.
Klasse 3: Eingelagerte Seiten mit R=1 und M=0.
Klasse 4: Eingelagerte Seiten mit R=1 und M=1.
Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png