[gesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 23: | Zeile 23: | ||
<p> | <p> | ||
Siehe <cite>Mandl+2013</cite> Kap. 7.2.3, 7.2.4 | Siehe <cite>Mandl+2013</cite> Kap. 7.2.3, 7.2.4 | ||
</p> | |||
<br /> | |||
==== Optimaler Seitenersetzungsalgorithmus ==== | |||
<p> | |||
Der optimale Algorithmus wählt unter allen derzeit in einem Seitenrahmen eingelagerten virtuellen Seiten diejenige Seite zur Ersetzung aus, welche in Zukunft am spätesten erst wieder benötigt wird. | |||
</p> | |||
<p> | |||
Der Grund für diese Strategie ist ganz einfach: Hierbei werden in Zukunft am wenigsten weitere Seitenfehler ausgelöst. Und da jeder Seitenfehler Zeit kostet, und so das Gesamtsystem für den Bediener verlangsamt, ergibt sich bei konsequenter Anwendung des optimalen Algorithmuses ein möglichst schnelles System. | |||
</p> | |||
<br /> | |||
<p> | |||
<loop_area type="notice"> | |||
<p> | |||
Es wäre für die Performanz des Systems sehr schlecht, wenn ein Seitenersetzungsalgorithmus genau denjenigen Seitenrahmen für die benötigte Seite frei macht, in dem sich bislang genau die Seite befindet, die gleich beim nächsten auf der CPU verarbeiteten Befehl angesprochen werden wird. | |||
</p> | |||
</loop_area> | |||
</p> | </p> | ||
Tritt bei der Adressumrechnung in der MMU ein Page fault auf, so muss das Betriebssystem dafür sorgen, dass die benötigte virtuelle Seite aus dem Hintergrundspeicher in einen freien Seitenrahmen des physikalischen Speichers eingelagert wird.
Steht derzeit aber kein freier Seitenrahmen zur Verfügung, so ist es die Aufgabe des implementierten Seitenersetzungsverfahrens zu entscheiden, welche momentan eingelagerte virtuelle Seite in den Hintergrundspeicher verschoben wird. Dadurch wird dann (mindestens) ein freier Seitenrahmen geschaffen, die benötigte virtuelle Seite kann eingelagert werden, und die MMU kann die zuvor gescheiterte Adressumrechnung erneut durchführen.
Im Laufe der Entwicklungsgeschichte von Betriebssystemen wurden eine ganze Reihe von Seitenersetzungsverfahren vorgeschlagen:
Siehe Mandl 2013 Kap. 7.2.3, 7.2.4
Der optimale Algorithmus wählt unter allen derzeit in einem Seitenrahmen eingelagerten virtuellen Seiten diejenige Seite zur Ersetzung aus, welche in Zukunft am spätesten erst wieder benötigt wird.
Der Grund für diese Strategie ist ganz einfach: Hierbei werden in Zukunft am wenigsten weitere Seitenfehler ausgelöst. Und da jeder Seitenfehler Zeit kostet, und so das Gesamtsystem für den Bediener verlangsamt, ergibt sich bei konsequenter Anwendung des optimalen Algorithmuses ein möglichst schnelles System.
Es wäre für die Performanz des Systems sehr schlecht, wenn ein Seitenersetzungsalgorithmus genau denjenigen Seitenrahmen für die benötigte Seite frei macht, in dem sich bislang genau die Seite befindet, die gleich beim nächsten auf der CPU verarbeiteten Befehl angesprochen werden wird.
Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png