[gesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung |
|||
Zeile 43: | Zeile 43: | ||
</loop_figure> | </loop_figure> | ||
</p> | </p> | ||
<br /> | <br /> | ||
<p> | <p> | ||
Die MMU nimmt bei der (erfolgreichen) Umrechnung einer virtuellen in eine physikalische Adresse ein Setzen des R-Bits im betreffenden Eintrag der Seitentabelle vor. | 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. | ||
</p> | |||
<p> | |||
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. | |||
</p> | </p> | ||
<br /> | <br /> | ||
==== Aufgabe 1 ==== | ==== Aufgabe 1 ==== | ||
<p> | <p> | ||
Zeile 57: | Zeile 58: | ||
<loop_task title="Lesen, schreiben, R-Bit?"> | <loop_task title="Lesen, schreiben, R-Bit?"> | ||
<p> | <p> | ||
Es ist klar, dass das R-Bit bei einem lesenden Zugriff auf eine Seite von der [[MMU - Memory Management Unit|MMU]] gesetzt werden muss. | Es ist klar, dass das R-Bit bei einem '''lesenden Zugriff''' auf eine Seite von der [[MMU - Memory Management Unit|MMU]] gesetzt werden muss. | ||
</p> | </p> | ||
<p> | <p> | ||
Muss das R-Bit aber auch bei einem schreibenden Zugriff gesetzt werden? Zusammen mit dem [[Seitenersetzungsverfahren#Das_Modifiziert-Bit|M-Bit]]? | Muss das R-Bit aber auch bei einem '''schreibenden Zugriff''' gesetzt werden? Zusammen mit dem [[Seitenersetzungsverfahren#Das_Modifiziert-Bit|M-Bit]]? | ||
</p> | </p> | ||
</loop_task> | </loop_task> |
{{#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, dass wenn in letzter Zeit nicht darauf 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 Frage 1 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.
Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png