Professional Documents
Culture Documents
y Memoria Virtual
Presentado por:
Juan David Meja
Presentado a :
Leonardo Javier Nivia Ruiz
PAGINACIN Y SEGMENTACIN
Permiten la ubicacin no contigua de programas para combatir la fragmentacin y
la degradacin de la memoria. Al poder ubicarse de forma no contigua, un
programa ya no necesita un hueco de su tamao, sino que la cantidad total de
memoria libre sea mayor o igual. La ubicacin no contigua requiere dividir los
programas en trozos. En paginacin, que es un caso particular del particionado
fijo, el programa se divide en pginas del mismo tamao. La segmentacin, que es
un caso particular de particionado variable, divide el programa en sus unidades
lgicas (cdigo, pila, datos, etc...), denominadas segmentos. Las direcciones
lgicas de los programas no contiguos presentan una gran independencia de su
ubicacin fsica (direccionamiento virtual), proporcionada sobre la base de tablas
de traduccin de direcciones. Otra ventaja de los programas no contiguos es que
facilita que varios programas compartan trozos entre ellos, por ejemplo el cdigo,
lo que permite un ahorro importante de memoria y de tiempo de carga.
Es necesario soporte hardware para la traduccin de direcciones. Las direcciones
lgicas generadas por el programa se dividen en nmero de pgina (o segmento)
y desplazamiento dentro de la pgina. La traduccin del nmero de pgina (o
segmento) a marco de pgina en memoria fsica (o direccin de comienzo del
segmento) se realiza en tiempo de ejecucin mediante una tabla de pginas (o
tabla de segmentos) asociada al programa, que habitualmente reside en memoria.
Adems, es conveniente hardware adicional para acelerar la traduccin, ya que
cada referencia a memoria implica dos accesos a memoria fsica. Se requiere un
registro apuntador a la base de la tabla de pginas del programa o a la tabla de
segmentos. El clculo de la direccin fsica es ms simple en paginacin, ya que
slo requiere la concatenacin del nmero de marco y el desplazamiento, mientras
que la segmentacin implica una suma de la direccin base del segmento y el
desplazamiento.
Para proteccin, en la paginacin se puede asociar un conjunto de bits a cada
entrada de la tabla de pginas:
bit de slo lectura
bits para restricciones de acceso (en sistemas multiusuario).
En segmentacin, la proteccin es ms sencilla y natural, al establecerse de
acuerdo a divisiones lgicas del programa. La tabla de segmentos especifica
tambin la longitud de cada segmento, lo que proporciona un mecanismo adicional
para tratar errores de direccionamiento fuera de segmento, mediante un trap que
se genera si el desplazamiento supera la longitud del segmento.
Las tablas de pginas o segmentos proporcionan reubicacin dinmica a nivel de
pgina o de segmento. En paginacin, el cargador busca marcos de pgina libres
en memoria, carga las pginas del programa, crea la tabla de pginas con la
correspondencia y carga su direccin en el. En segmentacin el proceso es