3.3.2.2.3 Seitenersetzungsverfahren

In der vorangegangenen Auflistung findet sich u.a. der Punkt "Die zu ersetzende Seite E wird bestimmt,...", und es stellt sich die Frage:

Frage

Wie wird die zu ersetzende Seite bestimmt?


Diese Aufgabe wird von einem sogenannten Seitenersetzungsalgorithmus erledigt.

Im Laufe der Entwicklungsgeschichte von Betriebssystemen wurden eine ganze Reihe verschiedener Seitenersetzungsverfahren (oder Verdrängungsstrategien) vorgeschlagen bzw. implementiert, u.a.:

  • Optimaler Algorithmus
  • NRU - Not Recently Used Algorithmus
  • FIFO - First In First Out Algorithmus
  • Second Chance Algorithmus
  • Clock Page Algorithmus
  • LRU - Least Recently Used Algorithmus
  • NFU - Not Frequently Used Algorithmus
  • Working Set Algorithmus


Hinweis

Weiterführende Literatur

Mandl 2013 erläutert die genannten Algorithmen in den Kapiteln 7.2.3 und 7.2.4. Die Lektüre dieser Quelle sei ausdrücklich empfohlen.

Studierende sind oftmals berechtigt, eine PDF-Version dieses Buches ohne entstehende Kosten über ihre Hochschulen von Springerlink zu beziehen.


Einige der genannten Algorithmen werden auf den folgenden Seiten behandelt. Die ausführlichere Besprechung aller Verfahren leistet jedoch nur die weiterführende Literatur.


Hinweis

Beim Durcharbeiten der genannten Kapitel bei Mandl 2013 kann man sehr schön die Evolution der Algorithmen verfolgen. D.h. ein späteres Verfahren beruht sehr oft auf einem vorangegangenen Verfahren, wobei jedoch ein vorheriger Nachteil verbessert wurde.
Achte mal darauf!


So geht es weiter:


Aufgabe 1

Aufgabe

In diesem Kapitel wird beschrieben, dass ein Seitenersetzungsverfahren zum Einsatz kommt, wenn bei der Umrechnung einer virtuellen Adresse in eine physikalische Adresse auf der MMU ein Seitenfehler (page fault) ausgelöst wird.

Was ist jedoch im anderen Fall:
Eine virtuelle Adresse kann von der MMU erfolgreich in eine physikalische Adresse umgerechnet werden, es tritt also kein Seitenfehler auf.

Kommt dann auch ein Seitenersetzungsverfahren zum Einsatz?



Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png