Gestión de memoria virtual
Gestión de memoria virtual
Sustitución de páginas
Cuando se está ejecutando un proceso de usuario se produce un fallo de página el sistema operativo determina donde reside la página deseada dentro del disco y se encuentra con que no haya un marco libre en la lista de marcos libres, toda la memoria está siendo utilizada para esto se emplea una técnica de sustitución de páginas. Si no hay marcos libres, se localiza uno que no esté siendo utilizado actualmente que no se libera.
El mecanismo de sustitución de páginas:
• Hallar la ubicación de la página deseada dentro de un disco
o Localizar el marco libre: Si hay un marco utilizarlo
Si no hay seleccionar una víctima (un algoritmo)
Escribir el marco de la víctima en el disco
• Leer la página deseada y cargarla en el marco
• Reiniciar el proceso de usuario
Sustitución de páginas FIFO
• Asocia cada página al instante que dicha página fuera cargada en la memoria
• Cuando hace falta sustituir una página se elige la pagina mas antigua
• Se crea una cola FIFO para almacenar todas las páginas en memoria y sustituir la página situada en el principio de la cola
• Es fácil de entender y de programar
• Su rendimiento no siempre es bueno
• La página sustituida puede ser un módulo de inicialización ya que no será necesario, pero también puede ser una variable muy utilizada
• La anomalía de Belady la tasa de fallos de página puede incrementar a medida que se incremente el número de marcos asignados.
Sustitución óptima de páginas
• Un algoritmo óptimo de sustitución es aquel que lo por lo general tiene una tasa más baja de fallos entre todos los algoritmos que nunca está sujeto a la anomalía de Belady.
• Sustituir la página que no vaya a ser utilizada durante el periodo de tiempo más largo
• Es difícil de implementar porque requiere un conocimiento futuro de la cadena de referencia
• No hay muchos tiempos muertos para cargar las páginas
Sustitución de páginas LRU
• Sustituir la página que no haya sido utilizada durante el periodo más largo de tiempo
• Menos recientemente utilizada
• el LRU asocia con cada página el instante correspondiente al último uso de dicha página
• El problema es cómo se implementa el algoritmo
Asignación de Marcos
• No se puede asignar un número de marco superior al número total de marcos disponibles
• Debemos asignar al menos un número mínimo de marcos
• A medida que el número de marcos asignados a un proceso se reduzca, se incrementa el número de fallos
• El número mínimo de marcos está definido por el número de arquitectura informática
• La forma más fácil de repartir M marcos entre N procesos es dar uno a uno un número igual de marcos (asignación de arquitectura) M/N
• Otra alternativa es darse cuenta que los diversos procesos necesitan cantidades diferentes de memoria
Asignación proporcional :
Asignando a la memoria disponible a cada proceso de acuerdo al tamaño de este
Si= Σ Si
ai= Si/Sxm
De esta forma, ambos procesos compartirán los marcos disponibles de acuerdo sus necesidades, en lugar de repartir los marcos equitativamente.
Asignación global y local:
Sustitución global: Permite que un proceso seleccione un marco de sustitución entre el conjunto de todos los marcos disponibles, incluso si dicho marco está asignado a otro proceso.
Sustitución local: Cada proceso sólo se efectúa esta selección entre el propio conjunto de marcos asignados.
Sobre paginación
• Si un proceso no dispone de suficientes marcos general rápidamente fallos de página
• Se deberá sustituir alguna página sin embargo como todas sus páginas se están usando actualmente se vera forzado a sustituir una página que volverá a ser utilizada enseguida volverá a generar otro fallo de página
• Esta alta tasa de paginación se conoce como sobre paginación
• Un proceso entra como sobre paginación cuando invierte más tiempo generando fallos de páginas que en ejecución propia del proceso

Comentarios
Publicar un comentario