41
Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoria virtual E. Campo M. Knoblauch Ó. López J. Clemente Departamento de Automática Universidad de Alcalá Sistemas Operativos Avanzados Memoria virtual 1 / 41

Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Memoria virtual

E. Campo M. Knoblauch Ó. López J. Clemente

Departamento de AutomáticaUniversidad de Alcalá

Sistemas Operativos Avanzados Memoria virtual 1 / 41

Page 2: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Índice1 Introducción a la memoria virtual (MV)

¿Qué es la MV?Ventajas de la MV

2 Conceptos relacionados con la MVRequisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

3 Algoritmos de gestión de la MVAlgoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

4 Casos de estudioMach 3.0WindowsLinux

Sistemas Operativos Avanzados Memoria virtual 2 / 41

Page 3: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

¿Qué es la MV?Ventajas de la MV

¿Qué es la MV?

Es un esquema de gestión de memoria en el que los procesos:Se ejecutan sin estar completamente cargados en memoriaprincipal (MP)Pueden tener mayor tamaño que la MP disponible

Permite un desacoplamiento entre el espacio de direccionesfísicas y el espacio de direcciones virtualUtiliza el almacenamiento secundario como extensión de laMPBasada en el principio de localidad de las referencias ⇒ Sólose mantiene en MP la información necesaria en cada momentoEl control lo realiza el sistema operativo (SO) con la ayudaimprescindible del hardware

Sistemas Operativos Avanzados Memoria virtual 3 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 4: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

¿Qué es la MV?Ventajas de la MV

Ventajas de la MV

1 Transparencia en las transferencias, dispositivo dealmacenamiento ⇔ MP

2 El tamaño de los procesos depende del espacio dedireccionamiento virtual y del disco duro

3 Se mejora el rendimiento del sistema ⇒ se incrementa elgrado de multiprogramación

4 Reduce la E/S ⇒ sólo se cargan en MP las partes necesariasde un programa

Sistemas Operativos Avanzados Memoria virtual 4 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 5: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Requisitos hardware de la MV

Se utilizan mecanismos de paginación y segmentaciónVentaja de la paginación:

Transferencias más simples con bloques de tamaño fijoDisco ⇔ MP

Hardware de paginación:Unidad de gestión de la tabla del mapa de páginasBits en los descriptores de páginas de: presencia, modificación(dirty bit) y referenciaAlmacenamiento auxiliar para las páginas del procesoSoporte para interrumpir instrucciones

Sistemas Operativos Avanzados Memoria virtual 5 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 6: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Requisitos hardware de la MV

Sistemas Operativos Avanzados Memoria virtual 6 / 41

Page 7: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Carga dinámica

Transferencia de páginas de dispositivo de almacenamiento aMPSi la página referenciada no está disponible en MP ⇒ Fallo depágina (FP)

La tasa de fallos de página disminuye al aumentar el númerode marcos

Los tiempos que más afectan a la carga dinámica son:Cambios de contextoGuardar una página modificada en disco (page out)Cargar una página referenciada en MP (page in)

Mientras se realiza, el proceso está bloqueado

Sistemas Operativos Avanzados Memoria virtual 7 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 8: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Carga dinámica

Sistemas Operativos Avanzados Memoria virtual 8 / 41

Page 9: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Paginadores

Parte del SO que mueve páginas entre disco y MPRutinas para hacer la transferencia cuando se produce un FPSe crean y destruyen con el objeto proyectado en MVTipos de paginadores

De archivosP.ej.: mmap, exec

De objetos anónimos o swap pagerAquellos que no tienen una imagen en el sistema de archivos

Gestión del área de swap(área de memoria persistente para los objetos anónimos)

De dispositivosP.ej.: gestión del frame bufferSe proyecta la zona de memoria utilizada por el dispositivo (noen el disco)

Sistemas Operativos Avanzados Memoria virtual 9 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 10: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Hiperpaginación, vapuleo o thrashing

Caída de rendimiento al aumentar el grado demultiprogramaciónCuando los procesos intercambian páginas disco ⇔ MP

Soluciones:Reducir grado de multiprogramaciónUtilizar un algoritmo de reemplazo localSuministrar a cada proceso el número de marcos que necesite

Modelo del conjunto de trabajoFrecuencia de fallos de página

Sistemas Operativos Avanzados Memoria virtual 10 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 11: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Soluciones a la hiperpaginación

Modelo del conjunto de trabajoConjunto de páginas referenciadas por el proceso durante unintervalo de tiempoBasado en principio de localidad de referenciasMantiene alto el grado de multiprogramación

Sistemas Operativos Avanzados Memoria virtual 11 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 12: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Requisitos hardware de la MVCarga dinámicaPaginadoresHiperpaginación

Soluciones a la hiperpaginación

Frecuencia de fallos de páginaSe establece un umbral superior y otro inferior, para quitar oasignar marcos de página a un proceso

Sistemas Operativos Avanzados Memoria virtual 12 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 13: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Algoritmos de gestión de memoria (i)

Objetivo ⇒ Minimizar el porcentaje de FPs, con mínimasobrecarga y máximo aprovechamiento de la MPPolíticas de asignación¿Qué cantidad de MP se asigna a un determinado proceso?

Asignación fija y asignación variableAlcance del reemplazo: global y localGestión del espacio libre

Políticas de ubicación¿Dónde se ubica un bloque en MP?Políticas de búsqueda o lectura¿Cuándo y qué páginas se cargan en MP?

Paginación por demandaPaginación anticipada o prepaginación

Sistemas Operativos Avanzados Memoria virtual 13 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 14: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Algoritmos de gestión de memoria (ii)

Políticas de reemplazo¿Qué páginas deben sustituirse en MP?

Algoritmo óptimoAlgoritmo primera página en llegar/primera en salir FirstIn-First Out (FIFO)Algoritmo página menos usada recientemente - Least RecentlyUsed (LRU)Algoritmos de aproximación al LRU: reloj global, FIFO segundaoportunidad, página no usada frecuentemente - Not FrequentlyUsed(NFU)

Sistemas Operativos Avanzados Memoria virtual 14 / 41

Page 15: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de asignación (i)

Determinan qué cantidad de MP se asigna a un proceso segúnsus necesidadesAsignación fijaEl número de marcos se decide en la carga inicial y estádeterminado por el tipo de procesoAsignación variableEl número de marcos cambia a lo largo de la vida de unproceso

Modelo del conjunto de trabajoFrecuencia de FPs

Sistemas Operativos Avanzados Memoria virtual 15 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 16: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de asignación (ii)

Alcance del reemplazoGlobal: Considera todos los marcos de MP como candidatos,independientemente del proceso al que pertenezcan

Ventaja: Mejor aprovechamiento de la MPInconveniente: HiperpaginaciónEjemplo: Unix

Local: Considera los marcos del proceso que originó el FPVentaja: El número de FPs es más deterministaInconveniente: Mayor sobrecarga ⇒ Cálculo de los marcos aasignar en cada instanteEjemplos: VMS y Windows

Sistemas Operativos Avanzados Memoria virtual 16 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 17: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de asignación (iii)

Gestión del espacio libreEl SO mantiene el estado de los marcos libres o asignados

Mapa de bitsListas enlazadas (Windows)Sistema de colegas o buddy (Linux, Unix)

Sistemas Operativos Avanzados Memoria virtual 17 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 18: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de ubicación

Determinan dónde se ubica un bloque en MPSegmentación pura

Primer ajusteSiguiente ajusteMejor ajustePeor ajuste

PaginaciónCarece de importancia

Sistemas Operativos Avanzados Memoria virtual 18 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 19: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de búsqueda o de lectura

Determinan cuándo y qué páginas se cargan en MPPaginación por demandaSólo se carga en MP cuando se ha referenciado

VentajasEn MP sólo hay lo que se necesitaLa sobrecarga es mínima

Paginación anticipada o prepaginaciónSe cargan en MP según una predicción

VentajasSi la predicción es buena, el tiempo de ejecución de losprocesos se reduceÚtil cuando se accede secuencialmente a dispositivos dealmacenamiento

Sistemas Operativos Avanzados Memoria virtual 19 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 20: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazo

Deciden qué páginas deben sustituirse en MPCriterios

1 Baja sobrecarga2 Sin ajustes en máquinas con distintas configuraciones (no

tuning)3 Aproximación al LRU

Cadena de referenciasLista de referencias a páginas para evaluar la calidad de estosalgoritmosSe eliminan los accesos contiguos a la misma páginaObtención

Artificialmente, de forma pseudoaleatoriaA partir de una traza de ejecución

Sistemas Operativos Avanzados Memoria virtual 20 / 41

Ángel
Nota adhesiva
LRU: Least Recently Use (Menos Usado Recientemente)
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 21: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazoAlgoritmo óptimo

Se reemplaza la página que va a tardar más tiempo en usarseVentaja: Ofrece la tasa de fallos más baja posibleEstablece un criterio de evaluación del resto de algoritmosInconveniente: No implementable

Sistemas Operativos Avanzados Memoria virtual 21 / 41

Ángel
Nota adhesiva
8 páginas: de la 0 a la 7, con 3 marcos
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 22: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazoAlgoritmo FIFO

Se reemplaza la página que lleva más tiempo cargada en MPVentaja: Sencillo de implementarInconvenientes

Bajo rendimientoAnomalía de Belady ⇒ Incremento FPs al aumentar no marcosEjemplo: Calcular FPs en 1 2 3 4 1 2 5 1 2 3 4 5 con 3 y 4 marcos

Sistemas Operativos Avanzados Memoria virtual 22 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 23: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazoAlgoritmo LRU

Aproximación al algoritmo óptimo. Utiliza el pasado recientepara predecir el futuroSustituye la página menos usada en el pasadoInconvenientes

Dificultad de implementaciónAlta sobrecargaSolución: Utilizar algoritmos de aproximación al LRU

Sistemas Operativos Avanzados Memoria virtual 23 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 24: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazo

Algoritmos de aproximación al LRU - Reloj globalSe crea una lista circular y se emplea un bit R asociado a cadapágina

1 Mientras la lista no esté llena, cargar páginas con bit dereferencia (R) igual a 0

2 Si se referencia una página, se pone bit R = 13 Cada cierto periodo, con un puntero giratorio poner bits R = 04 Si la lista está llena:

Si bit R = 0, reemplazar página y avanzar punteroSi bit R = 1, poner bit R = 0 y avanzar el puntero

Ejemplo: 4.3 BSD

Sistemas Operativos Avanzados Memoria virtual 24 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 25: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazo

Algoritmos de aproximación al LRU - FIFO con 2a oportunidadSe emplea un bit R asociado a cada página

1 Elegir una página con criterio FIFO- Si R = 1, poner R = 0- Si R = 0, sustituir la página

2 Avanzar puntero e ir a 1Generalmente se implementa con una cola FIFO circularVentaja: Baja sobrecargaInconveniente: Puede degenerar en un FIFO si todas lapáginas tienen R = 1

Sistemas Operativos Avanzados Memoria virtual 25 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 26: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazo

Algoritmos de aproximación al LRU - FIFO con 2a oportunidad

Sistemas Operativos Avanzados Memoria virtual 26 / 41

Ángel
Resaltado
Page 27: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazo

Algoritmos de aproximación al LRU - NFUSe controla la interrupción de un reloj y se emplea uncontador y un bit R asociado a cada página

Por cada interrupción del reloj- Si R = 1, incrementar el contador- Poner todos los bits R a 0Por cada FP, se reemplaza la página con el menor valor en elcontador

Inconveniente: Si una página se usó mucho, no se reemplazaráaunque ya no se acceda a ellaSolución: Emplear mecanismos que envejezcan los contadores.En vez de incrementarlos

Desplazar el contador 1 bit a la derechaAñadir bit de ref. en el extremo izquierdo del contador

Sistemas Operativos Avanzados Memoria virtual 27 / 41

Ángel
Nota adhesiva
NFU (Not Frecuent Used): No Usado Frecuentemente
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 28: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Algoritmos de gestión de memoriaPolíticas de asignaciónPolíticas de ubicaciónPolíticas de búsqueda o de lecturaPolíticas de reemplazo

Políticas de reemplazo

Algoritmos de aproximación al LRU - NFU

Sistemas Operativos Avanzados Memoria virtual 28 / 41

Ángel
Resaltado
Page 29: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Mach 3.0

Aproximación al LRU con FIFO segunda oportunidadUtiliza tres colas de páginas

Cola de páginas libres, puestas a 0. Se reemplazan cada vezque hay un FPCola de páginas activas. Mantienen el conjunto de trabajoCola de páginas inactivas. Buffer de páginas no referenciadas

El demonio pageout libera páginas, moviéndolas de la cola deactivas a la de inactivas cuando el número de páginas librescae por debajo de un umbral

Sistemas Operativos Avanzados Memoria virtual 29 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 30: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

W2K

Mecanismo de clusteringSi hay FP, realiza paginación bajo demanda trayendo variaspáginas contiguasDepende de la cantidad de MP y tipo de objeto que produjo elFPEn sistemas de sobremesa el valor del clustering es 8 marcospara código, 4 para datos y 8 para el resto

Gestión del conjunto de trabajo (WS) ⇒ Número de páginascargadas en MP del proceso en ejecución

Asignación variable de número de marcos y alcance localAl iniciar un proceso se asigna un tamaño mínimo del WSEl tamaño de los WS varía dinámicamente entre 50 y 345páginas

Reajusta el WS de los procesos y decide qué cantidad depáginas se pueden liberarIncrementa el tamaño del WS si el proceso genera FPs

Sistemas Operativos Avanzados Memoria virtual 30 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 31: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

W2K

Estado de los marcosErróneo - Con daños físicosLibre - Sin asignar, pero no puede asignarse hasta poner a 0sVacío - Iniciado a 0sActivo - Presente en un WS o bloqueado en memoriaTransición - Está actualizándose con información del discoReposo - Ha dejado de pertenecer a un WS, pero contieneinformación y está apuntado desde la TMPModificado - La información que contiene no se ha salvado endiscoModificado sin escritura - Es necesario esperar para actualizarsu información en disco

Sistemas Operativos Avanzados Memoria virtual 31 / 41

Page 32: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

W2K

Sistemas Operativos Avanzados Memoria virtual 32 / 41

Page 33: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

LinuxDireccionamiento de la memoria virtual

Tabla de páginas con tres niveles y cuatro campos: directoriode páginas, directorio intermedio, tabla de páginas ydesplazamientoCada tabla de páginas ocupa 1 páginaDiseñada para Alpha 64 bits. Se adapta a x86 (32 bits)definiendo tamaño del directorio intermedio = 1

Sistemas Operativos Avanzados Memoria virtual 33 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 34: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Linux

Estructuras de datos

Sistemas Operativos Avanzados Memoria virtual 34 / 41

Page 35: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Linux

Fallo de páginas

Sistemas Operativos Avanzados Memoria virtual 35 / 41

Page 36: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Linux

Asignación de páginas utilizando el sistema de colegas

Sistemas Operativos Avanzados Memoria virtual 36 / 41

Page 37: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Linux

Algoritmo de reemplazoAlcance del reemplazo globalLa gestión del área de intercambio se realiza con el demoniokswapd

Cada segundo comprueba el número de marcos libres y buscalos que pueden ser reemplazadosEs un algoritmo de aproximación al LRU con envejecimientoBasado en la edad de las páginas

Sistemas Operativos Avanzados Memoria virtual 37 / 41

Ángel
Resaltado
Ángel
Resaltado
Page 38: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Linux

Algoritmo de reemplazoTécnica de envejecimiento de páginas

Todas las páginas se inician con edad 3Si se accede a una página, R = 1, se incrementa en 3 la edadde la página, hasta un máximo de 20Si se ejecuta kswapd, se decrementa en 1 la edad de lapáginas que no se usan (bit R = 0)

Si una página modificada se lleva a discoSe marca como inválida la entrada en la TMPSe incluye la información para su recuperación posteriorSe libera el marco, añadiéndolo a lista de marcos libres

Las páginas no modificadas se marcan como libres y susmarcos se añaden a la lista de marcos libresSi se recuperan suficientes marcos para el proceso, el demoniodormirá de nuevoSi no, se continúa con el siguiente proceso

Sistemas Operativos Avanzados Memoria virtual 38 / 41

Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Ángel
Resaltado
Page 39: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Linux

Algoritmo de reemplazo

Sistemas Operativos Avanzados Memoria virtual 39 / 41

Page 40: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Introducción a la memoria virtual (MV)Conceptos relacionados con la MV

Algoritmos de gestión de la MVCasos de estudio

Mach 3.0WindowsLinux

Linux

Algoritmo de reemplazo

Sistemas Operativos Avanzados Memoria virtual 40 / 41

Page 41: Memoriavirtual - Academia Cartagena99€¦ · Introducción a la memoria virtual (MV) Conceptos relacionados con la MV Algoritmos de gestión de la MV Casos de estudio Memoriavirtual

Referencias bibliográficas

[Sánchez, 2005] S. Sánchez Prieto.Sistemas Operativos.Servicio de Publicaciones de la UA, 2005.[Stallings, 1999] W. Stallings.Organización y arquitectura de Computadores.Ed. Prentice Hall, 1999.[Silberschatz, 2006] A. Silberschatz, P. B. Galván y G. GagneFundamentos de Sistemas Operativos.McGraw Hill. 2006[Tanenbaum, 2009] A. Tanenbaum.Sistemas Operativos Modernos.Ed. Pearson Education, 2009.

Sistemas Operativos Avanzados Memoria virtual 41 / 41