Conceptos Clave y Requisitos de la Gestión de Memoria en Sistemas Operativos
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 3,27 KB
Administración de Memoria en Sistemas Operativos
Definición y Objetivos de la Gestión de Memoria
- Cargar programas en la memoria principal para su ejecución por el procesador.
- Dividir dinámicamente la memoria principal para albergar múltiples procesos.
- Asignar la memoria de manera eficaz para evitar que el procesador permanezca inactivo mientras espera procesos.
- Permite ejecutar un programa más grande que la memoria física disponible (mediante técnicas de memoria virtual).
Requisitos Fundamentales de la Gestión de Memoria
1. Reubicación (Relocation)
- Capacidad de mover un programa de una región a otra de la memoria principal sin invalidar sus referencias de memoria.
- El hardware del procesador y el sistema operativo traducen las direcciones de referencia de memoria a direcciones de memoria física.
2. Protección (Protection)
Cada proceso debe ser protegido de interferencias no deseadas, ya sean accidentales o intencionales, de otros procesos. El hardware es responsable de la verificación; en caso de violación, la ejecución se aborta.
3. Compartición (Sharing)
Permite que múltiples procesos accedan a la misma zona de memoria principal.
Ventaja: Permite compartir una estructura de datos común y acceder a la misma copia del programa sin comprometer el requisito de protección.
4. Organización Lógica
Capacidad para manipular programas y datos de usuario organizados en módulos.
- Memoria: Secuencia de bytes y palabras.
- Programas: Organizados en módulos.
Ventajas:
- Los módulos pueden ser escritos y compilados de forma independiente.
- Permite introducir mecanismos de compartición entre los módulos.
5. Organización Física
Organización de la jerarquía de memoria de la computadora (dos niveles principales):
- Memoria Principal: Rápida, volátil y de alto costo.
- Memoria Secundaria: Almacenamiento permanente, lenta y barata.
Técnicas de Particionamiento de Memoria
a) Particionamiento Fijo
La memoria principal se divide en un número fijo de particiones estáticas.
Ventaja: Simple de implementar, bajos gastos generales (overhead) del sistema.
Desventaja: Fragmentación interna (uso ineficiente de la memoria principal, ya que cualquier programa ocupa una partición completa, independientemente de su tamaño).
Limitación: El número y tamaño de las particiones se especifican en el momento de la generación del sistema.
Algoritmos de Asignación para Particionamiento Fijo
- Partición de igual tamaño.
- Partición de diferente tamaño (dos enfoques):
- Una cola de procesos para cada partición.
- Una cola única para todas las particiones.
b) Particionamiento Dinámico
A cada proceso se le asigna una partición del tamaño exacto que requiere.
Ventaja: No hay fragmentación interna.
Desventaja: Fragmentación externa (la memoria se llena de 'agujeros' o espacios libres no contiguos).