La clave del concepto de memoria (almacenamiento) virtual esta en la disociación:
- De las direcciones a las que hace referencia un programa.
- De las direcciones disponibles en la memoria real (almacenamiento primario).
Mientras
el proceso se ejecuta con sus páginas actuales, el sistema carga las demás
páginas que estarán disponibles cuando las requiera el proceso.
El S. O. intenta predecir las páginas que un proceso va a necesitar y a
continuación precarga estas páginas cuando hay espacio disponible Mientras el
proceso ejecuta sus páginas actuales, el sistema carga páginas nuevas que
estarán disponibles cuando el proceso las pida, debido a ello, el tiempo de
ejecución de un proceso se puede reducir.
Estrategias
de Administración del Almacenamiento Virtual
Las
diferentes organizaciones de almacenamiento virtual generalmente implementadas
son:
- Paginación.
- Segmentación.
- Segmentación y paginación.
Las
estrategias para la administración de sistemas de almacenamiento virtual
condicionan la conducta de los sistemas de almacenamiento virtual que operan
según esas estrategias.
- “Estrategias de búsqueda”:
Tratan de los casos en que una página o segmento deben ser traídos del almacenamiento secundario al primario.
Las estrategias de “búsqueda por demanda” esperan a que se haga referencia a una página o segmento por un proceso antes de traerlos al almacenamiento primario.
Los esquemas de “búsqueda anticipada” intentan determinar por adelantado a qué páginas o segmentos hará referencia un proceso para traerlos al almacenamiento primario antes de ser explícitamente referenciados.
- “Estrategias de colocación”:
Tratan del lugar del almacenamiento primario donde se colocará una nueva página o segmento.
Los sistemas toman las decisiones de colocación de una forma trivial ya que una nueva página puede ser colocada dentro de cualquier marco de página disponible.
- “Estrategias de reposición”:
Estrategias de Reposición de PáginaTratan de la decisión de cuál página o segmento desplazar para hacer sitio a una nueva página o segmento cuando el almacenamiento primario está completamente comprometido.
Las
principales son:
- El principio de optimización.
- Reposición de páginas al azar.
- Primero en entrar - primero en salir.
- Menos recientemente usada.
- Menos frecuentemente usada.
- No usada recientemente.
- Conjuntos de trabajo.
1. El Principio de Optimización El “principio de optimización” indica que para obtener un rendimiento óptimo, la página que se va a reponer es una que no se va a utilizar en el futuro durante el período de tiempo más largo.
El problema es que no es factible predecir el futuro.
Todas las páginas del almacenamiento principal deben tener la misma probabilidad de ser reemplazadas.
Debe poder seleccionar cualquier página, incluyendo la que va a ser referenciada a continuación (peor selección).
Este esquema es raramente usado.
3.- Reposición de Página por el Sistema de Primero en Entrar -Primero en Salir (FIFO)
Se registra el momento en que cada página ingresa al almacenamiento primario.Para reemplazar una página, se selecciona aquella que ha estado más tiempo almacenada.
Se presenta el inconveniente de que se pueden reemplazar páginas muy usadas, que serán llamadas de nuevo al almacenamiento primario casi de inmediato.
Se puede presentar la llamada “anomalía FIFO”:
- Belady, Nelson y Shedler descubrieron que con la reposición FIFO, ciertos patrones de referencias de páginas causan más fallos de páginas cuando se aumenta el número de marcos (celdas) de páginas asignados a un proceso: en esto consiste la “anomalía FIFO”.
- Esta anomalía contradice a la intuición
4.-
Reposición de Página Menos - Recientemente - Usada (LRU)
Esta
estrategia selecciona para ser reemplazada la página que no ha sido usada
durante el mayor período de tiempo.
Se
basa en la heurística de que el pasado reciente es un buen indicador del futuro
próximo.
Requiere
que cada página reciba un “sello de tiempo” cada vez que se
referencia:
- Puede significar una sobrecarga adicional importante.
- No se implementa frecuentemente.
La
página seleccionada para reemplazo podría ser la próxima en ser requerida, por
lo que habría que paginarla de nuevo al almacenamiento principal casi de
inmediato.
5.-
Reposición de Página Menos - Frecuentemente - Usada (LFU)
Acá
interesa la intensidad de uso que haya tenido cada página.
La
página que será reemplazada es aquella que ha sido usada con menos frecuencia o
que ha sido referida con menos intensidad.
El inconveniente es
que se puede seleccionar fácilmente para su reposición la página equivocada:
- Ej.: La página de uso menos frecuente puede ser la página de entrada más reciente al almacenamiento principal, y por lo tanto existe una alta probabilidad de que sea usada de inmediato.
6.-
Reposición de Página No Usada - Recientemente (NUR)
Presupone
que las páginas que no han tenido uso reciente tienen poca probabilidad de ser
usadas en el futuro próximo y pueden ser reemplazadas por otras nuevas.
Es
deseable reemplazar una página que no ha sido cambiada mientras estaba en el
almacenamiento primario.
La
estrategia NUR se implementa con la adición de dos bits de hardware por
página:
- “Bit referenciado”:
- 0 si la página no ha sido referenciada.
- 1 si la página ha sido referenciada.
- “Bit modificado” (también llamado “bit sucio”):
- 0 si la página no ha sido modificada.
- 1 si la página ha sido modificada.
La
selección de la página que será reemplazada comienza buscando una página que no
ha sido referenciada, pero si no la encuentra habrá que reemplazar una página
que ha sido referenciada.
Si una
página ha sido referenciada se comprueba si ha sido modificada o no:
- Si no ha sido modificada se la reemplaza:
- Su reposición representa menos sobrecarga que la de una página modificada, ya que debería grabarse de nuevo en el almacenamiento secundario.
- Si no se encuentra una página que no ha sido modificada será reemplazada una página modificada.
Con el
transcurso del tiempo la mayoría de los “bits referenciados” serán
activados:
- Se pierde la capacidad para distinguir las páginas más deseables para ser reemplazadas.
- Para evitarlo se ajustan periódicamente todos los “bits referenciados” a “0”:
- Se logra un nuevo inicio.
- Se vuelve vulnerable al reemplazo aún a las páginas activas, pero solo brevemente, mientras se reajustan los bits.
No hay comentarios.:
Publicar un comentario