Entendiendo la Memoria: Paginación, Swapping y Segmentación Explicados
Clasificado en Informática
Escrito el en
español con un tamaño de 2,83 KB
Fundamentos de la Gestión de Memoria en SO
Monitor Residente
Es un sistema operativo básico cuya función es cargar programas en memoria y ejecutarlos. A medida que avanzaba la complejidad de los programas, fue necesario implementar soluciones para la organización de tareas sin la intervención de un operador. Por ello, se crearon los monitores residentes: programas que residían en memoria y gestionaban la ejecución de una cola de trabajos.
Máquina Desnuda
Se denomina máquina desnuda cuando no existe un núcleo (sistema operativo) ejecutándose sobre el hardware. Se trata de sistemas sencillos que ejecutan tareas cuando se produce alguna interrupción y son comúnmente utilizados en sistemas de tiempo real.
Swapping
Consiste en un canal de intercambio entre la memoria RAM y la memoria virtual. La forma habitual de crear el espacio de swap es mediante una partición cuyo tamaño duplique el de la memoria RAM. La idea básica es que cada programa en la memoria principal (RAM) tenga una copia en la memoria secundaria (memoria virtual), y esta copia se transfiere a la memoria principal cuando se requiere.
Overhead
Cuando un bloque es utilizado por dos o más segmentos a la vez, se dice que existe overhead.
Protección de Memoria
Su objetivo es asegurar que los programas de usuario no se vean afectados por la división de memoria. Para ello, se establece una dirección frontera que limita la zona del sistema operativo. Cualquier dirección que solicite un programa de usuario se compara con dicha frontera, permitiendo o denegando el acceso según corresponda.
Memoria Virtual
Es una técnica que crea un espacio de memoria que, en realidad, no existe físicamente. Permite disponer de un espacio de almacenamiento más grande que la memoria volátil (RAM), aunque su principal desventaja es que resulta mucho más lenta.
Segmentación
Es un método que separa la parte de programas y la de datos, dividiendo la memoria en tantos trozos de longitud variable como sea posible y necesario.
Paginación
Los trozos de memoria de tamaño fijo se denominan páginas. El almacenamiento real se particiona en marcos del mismo tamaño que las páginas. De este modo, una página puede y debe ser almacenada en un único marco, y viceversa.
Hiperpaginación (Thrashing)
La hiperpaginación, también conocida como thrashing, ocurre cuando un proceso está constantemente ocupado trayendo y retirando páginas de la memoria. Esto sucede si un proceso no tiene suficientes páginas asignadas, lo que provoca:
- Una tasa de fallos de página muy alta.
- Un bajo uso de la CPU.