La labor de gestión de memoria consiste en llevar un registro de las partes de memoria que se estén utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando éstos la necesitan y liberándola cuando terminen, así como administrar el intercambio entre la memoria principal y el disco de los casos en los que la memoria principal y el disco en los casos en los que la memoria principal no le pueda dar capacidad a todos los procesos que tienen necesidad de ello.
Requisitos de la gestión de memoria
-Reubicación: La memoria principal se ubica generalmente compartida por varios procesos. En general el programador no puede conocer por adelantado, qué otros programas residirán en la memoria en el momento de la ejecución de su programa. El sistema operativo tiene que conocer la ubicación de la información de control del proceso y de la pila de ejecución, así como el punto de partida para comenzar la ejecución del programa para dicho proceso, ya que el sistema operativo gestiona la memoria y es responsable de traer el proceso a la memoria principal.
-Protección: Cada proceso debe protegerse contra inferencias no deseadas de otros procesos, sean accidentales o intencionadas. El código de un proceso no puede hacer referencia a posiciones de memoria de otros procesos, con fines de lectura o escritura, sin permiso, puesto que se desconoce la ubicación de un programa en la memoria principal, es imposible comprobar las direcciones absolutas durante la compilación para asegurar la protección.
Así, todas las referencias a la memoria generadas por un proceso deben comprobarse durante la ejecución para asegurar que solo hacen referencia al espacio de memoria destinado a dicho proceso, y los mecanismos que respaldan la reubicación también forman parte básica del cumplimiento de las necesidades de protección.
No hay comentarios:
Publicar un comentario