Gestión de Memoria en Sistemas Operativos: Implementación y Estructuras de la Asignación Paginada
Clasificado en Informática
Escrito el en
español con un tamaño de 3,09 KB
Asignación Paginada
El espacio de dirección de memoria se divide en segmentos iguales llamados páginas, e igualmente se divide la memoria física en segmentos del mismo tamaño llamados bloques. Las páginas permanecen lógicamente contiguas, aunque los bloques correspondientes no necesariamente lo sean. La mayoría de los sistemas de paginación utilizan un tamaño de página de 1 a 4 KB.
Control de Memoria
Tablas de Mapas de Página (PMT)
Existe una tabla por espacio de dirección. Cada una contiene una entrada por cada página. Su función es la referencia de página de tarea a bloque de memoria.
Tablas de Bloques de Memoria (BMT)
Existe una única tabla en el sistema. Contiene una entrada para cada bloque de memoria con información relativa al uso de ese bloque. Su función es la referencia de bloque de memoria a qué tarea pertenece.
Factor Determinante de la Política de Memoria
Este factor lo decide el planificador de trabajo. La memoria de usuario se asigna sencillamente dándole el primer conjunto de bloques disponible.
Proceso de Asignación de Memoria
Se deben cargar todas las páginas del trabajo o los bloques asignados y realizar las actualizaciones correspondientes en las Tablas de Mapas de Página (PMT) y en la Tabla de Bloques de Memoria (BMT).
Proceso de Desasignación de Memoria
Al terminar el trabajo, los bloques deben ser devueltos al estado libre, ajustando las entradas en la Tabla de Bloques de Memoria.
Ventajas y Desventajas de la Paginación
Ventajas
- Elimina la fragmentación externa.
- Se elimina la necesidad de compactación.
- Permite la ejecución de más trabajos simultáneamente.
Desventajas
- Se requiere memoria adicional para almacenar las distintas tablas (PMT y BMT).
- Puede ocurrir un fenómeno conocido como ruptura de página (fragmentación interna), donde queda sin utilizar parte de la memoria si el tamaño del proceso no llena completamente la última página asignada.
- Quedará sin utilizar parte de la memoria si el número de bloques disponibles no es suficiente para los espacios de direcciones requeridos.
Mecanismo de Mapeo
Se requiere un mecanismo para efectuar el mapeo (traducción) desde la dirección efectiva de cada instrucción a la posición apropiada de memoria física.
Algoritmos y Estructuras de Datos
Existen tres tipos de tablas principales que deben ser administradas por la programación del Sistema Operativo (SO):
- Tabla de Trabajos (JT): Cada trabajo tiene una entrada separada que especifica la posición y longitud de su PMT.
- Tabla de Bloques de Memoria (BMT): Indica el estado de cada bloque de memoria.
- Tablas de Mapas de Página (PMT).