Reemplazo de páginas - Algoritmo NRU

Reemplazo de páginas - Algoritmo NRU

de Nicolas Aguilera Leal -
Número de respuestas: 2

Buenas,

Me quedan algunas dudas sobre este algoritmo. El libro dice que es como el algoritmo de segunda chance, pero con una tupla de 2 bits en vez de tener un solo bit de referencia.

El algoritmo de segunda chance resetea el bit de referencia cuando intenta reemplazar una entrada que tiene este bit en 1. El algoritmo NRU hace lo mismo? Si lo hace, resetea los dos bits? Luego, el libro dice sobre NRU: "Notice that we may have to scan the circular queue several times before we find a page to be replaced." (Cap. 9, p. 420). Por qué habría que recorrerlo varias veces? Esto me sugiere que o bien no se resetean los bits de referencia/modificado, o se resetean de a uno.

Qué significa "We replace the first page encountered in the lowest nonempty class"? (Cap. 9, p. 420). Hay una 5ta clase que es la vacía? Si fuera así, cómo se da cuenta el HW con solo dos bits (uno de referencia y otro de modificación)?

Gracias de antemano. 

Saludos!

En respuesta a Nicolas Aguilera Leal

Re: Reemplazo de páginas - Algoritmo NRU

de Nicolás Adriano Mayora Roth -
Hola tocayo, con respecto a tu pregunta de «Qué significa "We replace the first page encountered in the lowest nonempty class"?» El autor quiere decir que si tomas la clase como un entero de dos bits, entonces las clases serían la 0 (00), 1 (01), 2 (10) y 3 (11). Entonces, se reemplaza la primer página en la clase menor que tenga mimbros (esto es a lo que se refiere con nonempty); no podés reemplazar una página de la clase 0, si sólo hay páginas de las clases 1, 2 y 3.

A su vez, es posible que se tenga que recorrer varias veces la queue, ya que a medida que se considera cada página, el bit de referencia es cleared, lo cual cambia la clase a la cual una página pertenece.