La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Gestión de Memoria – Parte 2

Presentaciones similares


Presentación del tema: "Gestión de Memoria – Parte 2"— Transcripción de la presentación:

1 Gestión de Memoria – Parte 2
Agenda Memoria Virtual Paginación Segmentación Combinación de Paginación y Segmentación Software del SO Tamaño del conjunto residente Políticas de Carga Políticas de Vaciado Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

2 Gestión de Memoria Parte 2
Memoria Virtual (1) Dos características principales Todas las referencias del procesador a memoria son direcciones lógicas que se traducen durante la ejecución. Un proceso puede cargarse en partes que pueden no ser contiguas en Memoria Principal. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

3 Gestión de Memoria Parte 2
Memoria Virtual (2) Ventaja Durante la ejecución de un proceso No será necesario que estén todas sus partes en memoria. Las partes cargadas en Memoria Principal se denominan Conjunto Residente. Un bit indica si la página está o no en MP. Si está, incluye también el número de marco de la página. Otro bit de control indica si la página se modificó, y sólo se graba si fue modificada. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

4 Gestión de Memoria Parte 2
Memoria Virtual (3) Desventaja Cuando se carga un fragmento se debe descargar otro. Pero demasiados intercambios conducen a la Hiperpaginación (Trashing). Los algoritmos para evitarla se basan el principio de cercanía de referencias. Una Memoria Virtual práctica y efectiva requiere: Soporte del hardware. Un SO que incluya software que gestione intercambio de páginas o segmentos entre MP y MV. Lectura recomendada: Sistemas Operativos, William Stallings Estructuras de Hardware y Control Memoria Virtual y Cercanía de referencias. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

5 Gestión de Memoria Parte 2
Paginación (1) Las entradas de la tabla de páginas son más complejas que en Paginación Simple. Cuando se ejecuta un proceso, su dirección de comienzo en la tabla de páginas se mantiene en un registro (hardware). Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

6 Gestión de Memoria Parte 2
Paginación (2) Como cada referencia a memoria virtual puede generar dos accesos a memoria, se hace uso de una caché especial para las tablas de páginas denominada Buffer de traducción adelantada (TLB) que contiene aquellas entradas de las páginas usadas hace menos tiempo. Para un tamaño dado de TLB, si crece el tamaño de los procesos en MP y decrece su cercanía, disminuye el % de aciertos en accesos a la misma. Se pueden usar TLB mayores y con más entradas o usar tamaños de páginas grandes para que cada entrada a la tabla de páginas de la TLB haga referencia a un bloque de memoria mayor. También se puede diseñar un sistema con varios tamaños de página que así ofrece la flexibilidad necesaria para un uso eficaz de la TLB. Lectura recomendada: Sistemas Operativos, William Stallings Estructuras de Hardware y Control Memoria Virtual y Paginación. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

7 Gestión de Memoria Parte 2
Paginación (3) El tamaño de la página es una importante decisión en el diseño del hardware. Deben considerarse dos cuestiones: Cuando menor sea el tamaño de las página, menor será la fragmentación interna; pero mayor el tamaño de las tablas, cuya mayor parte estará en memoria virtual. Al tiempo que aumenta el tamaño de la MP, el espacio de direcciones también aumenta. Lectura recomendada: Sistemas Operativos, William Stallings Estructuras de Hardware y Control Memoria Virtual y Segmentación. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

8 Gestión de Memoria Parte 2
Segmentación (1) El programador no necesita preocuparse por las limitaciones de memoria impuestas por el tamaño de la MP. Las referencias a MP constan de una dirección virtual (nro. de segmento, desplazamiento). Las ventajas que ofrece esta técnica son: Simplifica el manejo de estructuras crecientes. Se presta a la compartición. Se presta a la protección. Se pueden modificar y recompilar los programas independientemente. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

9 Segmentación (2) Se usa la misma estructura que para la segmentación simple: una tabla de segmentos por proceso, pero más compleja. Como en la paginación con MV, usa un bit de presencia. Pueden haber otros bits de control, si se gestiona la protección o la compartición de segmentos se necesitarán más bits para este propósito. Lectura recomendada: Sistemas Operativos, William Stallings Estructuras de Hardware y Control Memoria Virtual y Segmentación. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

10 Combinación de paginación y segmentación (1)
Algunos sistemas combinan las ventajas de ambas. El espacio del usuario se divide en varios segmentos y cada segmento, a su vez, se puede dividir en varias páginas de tamaño fijo de igual longitud que un marco de MP. Asociada con cada proceso existe una tabla de segmentos y varias tablas de páginas (una por cada segmento). Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

11 Combinación de paginación y segmentación (2)
La protección ofrece la posibilidad de crear una estructura de anillos. Usualmente el anillo 0 está reservado para funciones del núcleo del SO. Los principios básicos del sistema de anillos son: Un proceso sólo puede acceder a datos que estén en el mismo anillo o uno de menor privilegio. Un proceso puede llamar a servicios que están en el mismo anillo o en otro más privilegiado. Lectura recomendada: Sistemas Operativos, William Stallings Estructuras de Hardware y Control Combinación de segmentación y paginación. Protección y compartición. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

12 Gestión de Memoria Parte 2
Software del SO (1) El diseño del gestor de memoria del SO depende de tres cuestiones: Hardware: Si se usa o no MV. Uso de segmentación, paginación, o ambas. Software: Algoritmos empleados. El SO debe decidir sobre qué páginas residentes debe reemplazar, el intercambio de E/S involucrado y la planificación del proceso que va a ejecutarse. Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

13 Gestión de Memoria Parte 2
Software del SO (2) ¿Cuándo se debe cargar una página en Memoria Principal? Las alternativas más comunes son dos: Paginación por demanda: Se carga una página en MP sólo cuando se hace referencia a una posición dentro de ella. Paginación previa: Se cargan, junto con la página referenciada, otras páginas consecutivas a la pedida. Lectura recomendada: Sistemas Operativos, William Stallings Software del Sistema Operativo Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

14 Políticas de reemplazo de páginas
Contemplan la decisión de qué página se va a reemplazar en MP cuando se debe cargar una nueva. Se consideran cuatro algoritmos básicos: La política óptima. La política del reloj. La política de la usada hace más tiempo. La política Primera en entrar, primera en salir (FIFO) Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

15 Tamaño del conjunto residente
Con memoria virtual, el SO debe decidir cuántas páginas debe traer a MP con u determinado proceso. Se debe considerar: Cuanto menor es la cantidad de memoria asignada a un proceso, mayor es el número de procesos que pueden estar simultáneamente en MP. Si en MP hay un número pequeño de páginas en un mismo proceso, el porcentaje de fallos de página será mayor. Lectura recomendada: Sistemas Operativos, William Stallings Gestión del conjunto residente Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

16 Gestión de Memoria Parte 2
Políticas de Carga Para asignar memoria al conjunto residente se establecen dos tipos de políticas: Asignación fija: Otorga a cada proceso un número fijo de páginas. Asignación variable: Permite cambiar el número de marcos asignados a un proceso durante su vida dentro del sistema. Lectura recomendada: Sistemas Operativos, William Stallings Políticas de carga Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

17 Gestión de Memoria Parte 2
Políticas de Vaciado Es contraria a la política de escritura; se preocupa por determinar el momento en que hay que escribir una página modificada en memoria secundaria. Con el vaciado por demanda una página se escribirá en el disco sólo cuando haya sido elegida para modificarse. Con el vaciado previo las páginas modificadas se escriben por lotes antes de que se necesiten sus marcos. Lectura recomendada: Sistemas Operativos, William Stallings Políticas de vaciado Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2

18 Diagrama de fallos Arquitectura y Sistemas Operativos
¿Entrada en TLB? ¿Lugar en TLB? Escribir en MV la entrada de la tabla a reemplazar ¿Se modificó? Algoritmo de selección de bloque a reemplazar Buscar entrada de la tabla en MV Pedido de acceso a memoria Cargar entrada en TLB Página en MP? ¿Lugar en MP? Escribir la Página a reemplazar en MV Algoritmo de selección de página a reemplazar Buscar página Cargar página en MP Acceso logrado No Si Fallo de TLB Fallo de página Arquitectura y Sistemas Operativos Gestión de Memoria Parte 2


Descargar ppt "Gestión de Memoria – Parte 2"

Presentaciones similares


Anuncios Google