Administración
de la Memoria
Administración de la memoria sin intercambio o
paginación.
Los sistemas de
administración de memoria se pueden clasificar en dos tipos. Los que desplazan los procesos de la memoria
principal al disco y viceversa durante la ejecución (intercambio y paginación)
y aquellos que no.
Monopogramación sin intercambio o paginación.
Es en forma
secuencial pues solo se tiene un objeto en memoria en cada instante, el usuario
carga toda la memoria con un programa, esto implica que cada proceso debe
contener controladores de dispositivo para cada uno de los dispositivos E/S que
utilice.
Multiprogramación y uso de la memoria.
La multiprogramación
facilita la programación de una aplicación al dividirla en dos o mas procesos.
La mayoría de los procesos tardan cierto tiempo en la espera de datos de
dispositivos E/S.
Un modelo para el uso
y aprovechamiento de la CPU es el modelo probabilístico dado por la fórmula :
Uso de la CPU = 1 -
pn
Multiprogramación con particiones fijas.
El objetivo en todo
esto es tener mas de un proceso en memoria a la vez, solución posible sería
dividir la memoria en n partes al inicio de una sesión de uso de la máquina,
pero aún así se obtiene el desperdicio de particiones grandes con una tarea
pequeña, la respuesta puede ser tener particiones pequeñas también.
Las tareas que van
llegando se forman hasta que una partición adecuada está disponible, en cuyo
momento la tarea se carga en esa partición y se ejecuta hasta terminar.
Intercambio.
En un sistema por
lotes la organización de la memoria en particiones fijas es adecuado pero en un
ambiente multiusuario la situación es distinta con el tiempo compartido, ya que
existen mas usuarios de los que puede albergar la memoria, por lo que es
conveniente albergar el exceso de los procesos en disco., por supuesto para ser
ejecutados estos procesos deben ser trasladados a la memoria principal. Al
traslado de procesos de disco a memoria y viceversa se le llama intercambio.
Multiprogramación con particiones variables.
Mediante un algoritmo
de administración de memoria las particiones variables varían de forma dinámica
durante el uso de la máquina, evitando desperdicio de memoria
Otros métodos de
administración de memoria que tenemos son:
la administración de
memoria con mapa de bits la memoria se divide
en unidades de asignación, a cada asignación le corresponden un bit en el mapa
de bits, un mapa de bits es una forma sencilla para llevar un registro de las
palabras de la memoria en una cantidad fija de memoria.
la administración de
memoria con listas ligadas otra forma de
mantener un registro en memoria es mediante una lista ligada donde cada entrada
de la lista específica un hueco o un proceso.
la administración de
memoria con el sistema de los asociados basado en el sistema
binario o utiliza para las direcciones.
Memoria Virtual
El método diseñado
por Fotheringham en 1961 se conoce como Memoria Virtual, la idea es que el tamaño combinado de la pila,
programa y datos puede exceder la memoria física disponible para ello. El S.O.
mantiene en memoria aquellas partes del programa que se deben permanecer en
memoria y el resto lo deja en disco, las partes entre el disco y la memoria se
intercambian de modo que se vayan necesitando.
Paginación.
El espacio de
direcciones de cada proceso se divide en bloques de tamaño uniforme llamados
páginas, los cuales se pueden colocar dentro de cualquier para página marco
disponible en memoria. Cuando las tablas de páginas son muy grandes se puede
utilizar un esquema de paginación de varios niveles para que las páginas se
paginen a sí mismas.
Existen distintos
niveles de paginación y a su vez distintos modelos de computadoras han
trabajado con ellas.
Paginación de nivel
1: PDP-11
Paginación de 2
niveles: la VAX
Paginación de 3
niveles: la SPARC
Paginación de 4
niveles: la 68030
Memoria asociativa
En los algoritmos de
paginación las tablas de páginas se mantienen en la memoria debido a su gran
tamaño, en potencia este diseño tiene un efecto enorme en el rendimiento.



No hay comentarios:
Publicar un comentario