Sistemas operativos modernos
durante ei tic actual, así que no es una candidata ideal para desalojarse. Por lo tanto, se apaga el bit R, se adelanta la manecilla a la siguiente página y se repite el algoritmo con ella. El es tado después de esta serie de sucesos se muestra en la figura 4-22b. Ahora consideremos qué sucede si la página a la que apunta la manecilla tiene R - O, co mo en la figura 4-22c. Si la edad es mayor que x y la página está limpia, quiere decir que no está en el conjunto de trabajo y que ya hay una copia válida en el disco. La nueva página sim plemente se coloca en ese marco de página, como se muestra en la figura 4-22d. En cambio, si la página está modificada, no se le podrá desalojar de inmediato porque no hay una copia vá lida en el disco. Para evitar una conmutación de procesos, se calendariza la escritura en disco, pero la manecilla se adelanta y el algoritmo continúa con la siguiente página. Después de to do, podría haber una página limpia vieja más adelante que se podrá usar de inmediato. En principio, todas las páginas podrían estar calendarizadas para E/S de disco en una vuel ta del “reloj”. A fin de reducir el tráfico de disco, podría fijarse un límite, y sólo permifir que se escriban a disco n páginas como máximo. Una vez alcanzado este límite, no se calendariza- rán más escrituras. ¿Qué sucede si la manecilla da toda la vueha y regresa a su punto de partida? Debemos distinguir dos casos: 1. Se calendarizó al menos una escritura. 2. No se calendarizó ninguna escritura. En el primer caso, la manecilla tan sólo se sigue adelantando, en busca de una página limpia. Puesto que se han calendarizado una o más escrituras, tarde o temprano alguna terminará y su página se marcará como limpia. La primera página limpia que se encuentre será la que se de saloje. Esta página no necesariamente es la primera escritura calendarizada porque el contro lador del disco podría reacomodar las escrituras para opfimizar el desempeño del disco. En el segundo caso, querrá decir que todas las páginas están en el conjunto de trabajo, pues de lo contrario se habría calendarizado por lo menos una escritura. A falta de información adi cional, lo más sencillo es desalojar cualquier página limpia y usar su marco. Podría tomarse nota de la ubicación de una página limpia durante el movimiento de la manecilla. Si no hay pá ginas limpias, se escoge la página actual, se escribe en disco y se desaloja. 4.4.10 Resumen de algoritmos de reemplazo de páginas Ya examinamos diversos algoritmos de reemplazo de páginas. En esta sección los resumire mos. La lista de algoritmos que describimos se da en la figura 4-23. El algoritmo óptimo reemplaza la página que se solicita al último. Lo malo es que no hay forma de saber cuál página será la úlüma, por lo que este algoritmo no puede usarse en la prác tica. Sin embargo, es útil como base de comparación de otros algoritmos. El algoritmo NRU divide las páginas en cuatro clases según el estado de los bits R y M .Se escoge al azar una página de la clase de número más bajo. Este algoritmo es fácil de imple mentar, pero es muy burdo. Hay mejores.
RkJQdWJsaXNoZXIy MjI4NDcx