Principios y Técnicas de Administración de Memoria
Enviado por federzzz y clasificado en Informática y Telecomunicaciones
Escrito el en
con un tamaño de 3,13 KB
Requisitos de la gestión de memoria
Para garantizar un funcionamiento eficiente en sistemas multiprogramados, la gestión de memoria debe cumplir con los siguientes requisitos fundamentales:
- Reubicación: En un sistema multiprogramado, la memoria disponible es compartida por varios procesos. El objetivo es cargar y descargar procesos activos en la memoria principal para maximizar el uso del procesador, manteniendo una reserva de procesos listos para ejecutar. Una vez que un programa ha sido descargado al disco, debe poder situarse en la misma región de memoria principal que antes.
- Protección: Cada proceso debe protegerse contra interferencias no deseadas de otros procesos, tanto accidentales como intencionadas. Por ello, el código de un proceso no puede hacer referencia a posiciones de memoria de otros procesos sin el permiso adecuado.
- Compartición: Cualquier mecanismo de protección debe ser lo suficientemente flexible para permitir el acceso de varios procesos a la misma zona de memoria principal, siempre bajo accesos controlados que no comprometan la seguridad.
- Organización lógica: La mayoría de los programas se estructuran en módulos, los cuales pueden escribirse y compilarse de forma independiente. Además, es posible otorgar distintos grados de protección (como solo lectura o solo ejecución) a dichos módulos.
- Organización física: La memoria del computador se organiza, al menos, en dos niveles: memoria principal y memoria secundaria. En este esquema, la gestión del flujo de información entre ambos niveles es crítica para el rendimiento del sistema.
Técnicas de gestión de memoria
1. Partición fija
La memoria principal se divide en un conjunto de particiones fijas durante la generación del sistema.
- Ventajas: Sencillez de implementación.
- Desventajas: Empleo ineficiente de la memoria debido a la fragmentación interna.
2. Partición dinámica
Las particiones se crean de forma que cada proceso se carga en una partición del tamaño exacto que requiere.
- Ventajas: No hay fragmentación interna.
- Desventajas: Uso ineficiente del CPU.
Algoritmos de ubicación
- Mejor ajuste: Elige el bloque de tamaño más parecido al solicitado.
- Primer ajuste: Comienza recorriendo la memoria desde el principio y escoge el primer bloque disponible que sea suficientemente grande.
- Siguiente ajuste: Recorre la memoria desde el lugar de la última ubicación y elige el siguiente bloque disponible que sea suficientemente grande.
Memoria Virtual
Es una técnica de gestión que utiliza el espacio en disco para simular una capacidad mayor, permitiendo una multiprogramación muy efectiva y relevando al usuario de las rígidas e innecesarias restricciones de la memoria principal.