14. ALGORITMOS DE SUSTITUCIÓN
DE PAGINAS.
Se dividen en:
Son: Son: Son:
BASICOS APROXIMACIONES LRU DE CONTEO
LRU CON BITS DE REFERENCIA LFU - LESS
FIFO ADICIONALES FREQUENTLY USED
OPTIMO LRU DE SEGUNDA OPORTUNIDAD MFU - MOST
O DEL RELOJ FREQUENTLY USED
LRU - LEST LRU DE SEGUNDA OPORTUNIDAD
RECENTLY USED MEJORADO
15. El objetivo de los algoritmos
de sustitución de paginas es
obtener la tasa de fallos de
paginas mas baja posible.
Se evalúan ejecutando
una cadena particular
de referencias de
memoria y contabilizan
el numero de fallos de
pagina en esa cadena.
16. En este método el sistema operativo sólo tiene que guardar en
qué orden las páginas fueron cargadas, de modo que al
necesitar hacer espacio pueda fácilmente elegir la primera
página cargada. Se usa una cola, al cargar una página nueva se
ingresa en el último lugar. Aunque las colas FIFO son simples e
intuitivas, no se comportan de manera aceptable en la
aplicación práctica, por lo que es raro su uso en su forma
simple. Uno de los problemas que presentan es la llamada
Anomalía FIFO o Anomalía de Belady. Belady encontró ejemplos
en los que un sistema con un número de marcos de páginas
igual a tres tenía menos fallos de páginas que un sistema con
cuatro marcos de páginas. El problema consiste en que
podemos quitar de memoria una página de memoria muy
usada, sólo porque es la más antigua
17.
18. Este algoritmo tiene como finalidad retirar la página
que vaya a ser referenciada más tarde, por ejemplo si
hay una página A que será usada dentro de 10000
instrucciones, y una página B que será usada dentro de
2800 instrucciones, se debería eliminar de la memoria
la página A. Como se puede deducir, para esto el
sistema operativo debería ver en cuánto tiempo será
usada cada página en memoria y elegir la que está más
distante. El problema de este método es que necesita
conocimiento del futuro, por lo que es imposible su
implementación. Es un algoritmo teórico. Se utiliza a
los efectos comparativos con los algoritmos factibles
de ser implementados para ver cuál se aproxima más a
éste.
19.
20. Este algoritmo difiere del de 'No usada recientemente'
en el hecho de que aquel sólo se fija en el intervalo de
tiempo desde que se pusieron en 0 los bits de
referencia de las páginas, mientras que el algoritmo de
'Menos usada recientemente' intenta proveer un
comportamiento casi óptimo mediante la observación
de las páginas que menos fueron usadas
recientemente. Este tipo de páginas, estadísticamente
son las que tienen menor probabilidad de ser usadas
nuevamente.
21.
22. Permite obtener información de ordenamiento adicional
si registramos los bits de referencia a intervalos
adicionales.
A medida que un proceso se ejecuta, el bit asociado
con cada página referenciada es colocado en ejecución
por el hardware.
Luego de un tiempo, puede determinarse qué páginas
han sido utilizadas examinando los bits.
23. Existe una variante de este algoritmo que sobre la
misma idea presenta una mejora en la implementación.
Es el algoritmo del reloj, que lo que hace es tener una
lista circular, de forma que al llegar al último elemento
de la lista, pasa automáticamente al primero. Los
elementos no se mueven al final de la cola cuando son
accedidos, simplemente se pone su bit de referencia a
1. Esto nos evita tener que hacer movimientos de
punteros en el caso de implementarlo con una lista
enlazada. De hecho, se puede implementar con un
array perfectamente, ahorrando así memoria.
24.
25. Selecciona la pagina que menos tiempo se tarda en
remplazar y que se ha utilizado menos recientemente.
28. ALCANCE DE REEMPLAZO
SIGNACIÓN VARIABLE SUSUPENSION DE
ASIGNACIÓN FIJA y Y
ALCANCE LOCAL PROCESOS
ALCANCE GLOBAL
29. La política de asignación variable, permite que el
número de marcos asignados cambie a lo largo de su
vida, por ejemplo, cuando un proceso sufre un alto
porcentaje de fallos de página, a este se le añaden
marcos para disminuir este porcentaje.
El alcance de reemplazo, se activa cuando Hay fallos
de página, y no hay marcos libres Para su reemplazo.
El reemplazo puede ser local o Global. Es local
cuando, se escoge Dentro de las páginas residentes
del proceso, Y es global cuando todas las páginas en
Memoria son candidatas a reemplazar
Independientemente de que procesos vengan
30. Un proceso tiene un número fijo de páginas, cuando
hay
un fallo de página, el sistema operativo, elige entre las
del
dicho proceso, que están actualmente en memoria. Es
necesario decidir por anticipado, la cantidad de
memoria
asignada a un proceso.
31.
32. La memoria principal, tendrá varios procesos cada uno
con un número
De marcos asignados. El sistema operativo
normalmente tiene una lista
De marcos libres. Cuando hay un fallo de página, se
añade un marco
Libre al conjunto del proceso y se carga la página.
34. 1. Un proceso cargado en la memoria se le asigna
cierto número
de marcos en función del tipo de aplicación.
2. Cuando se produce un fallo de página, se selecciona
la página a
reemplazar entre las del conjunto residente del
proceso.
35.
36. Si se va a reducir el grado de multiprogramación,
Deben suspenderse uno o más procesos residentes;
Se enumeran las siguientes posibilidades:
Procesos con la prioridad más baja.
Procesos con fallos de página.
Último proceso activado.
Proceso con el conjunto residente más pequeño.
El proceso mayor.
Procesos con la mayor ventana de ejecución restante