Anda di halaman 1dari 12

ISTEMAS OPERATIVOS

ESPACIOS DE DIRECCIONES
LOGICO Y FISICO

La direccin lgica es una direccin generada por la CPU.


La direccin fsica es una direccin vista por la unidad de
memoria, es decir, la que se encarga en el registro de
direcciones de memoria de la memoria.
Los mtodos de reasignacin en tiempo de compilacin y
en tiempo de carga generan direcciones lgicas y fsicas
idnticas.
Sin embargo, el esquema de reasignacin de direcciones
en tiempo de ejecucin hace que las direcciones lgicas y
fsicas difieran. En este caso, usualmente se dice que la
direccin lgica es virtual.
Un espacio de direcciones lgicas es el conjunto de todas
las direcciones lgicas generadas por un programa.
Un espacio de direcciones fsicas es el conjunto de todas
las direcciones fsicas correspondientes a las direcciones
lgicas.

La correspondencia entre direcciones virtuales y fsicas en


tiempo de ejecucin es establecida por un dispositivo
hardware que se denomina unidad de gestin de memoria
(M.M.U.).
El registro de reubicacin es tambin llamado registro
base. El valor contenido en el registro de reubicacin
suma a todas las direcciones generadas por un proceso de
usuario en el momento de enviarlas a memoria.
Ejemplo: si la base se encuentra en la direccin 14000,
cualquier intento del usuario de direccionar la posicin de
memoria cero se reubicara dinmicamente en la direccin
14000; un acceso a la ubicacin 346 se convertir en la
ubicacin 14346.
El programa de usuario nunca ve las direcciones fsicas
reales. El programa puede crear un puntero a la ubicacin
346, almacenarlo en memoria, manipularlo y compararlo
con otras direcciones siempre como el numero 246. solo
cuando se lo utiliza como direccin de memoria se

El programa de usuario maneja direcciones lgicas y el


hardware de conversin (mapeo) de memoria convierte
esas direcciones lgicas en direcciones fsicas. La
ubicacin final de una direccin de memoria referenciada
no se determina hasta que se realiza esa referencia.
Las direcciones lgicas estn en el rango de 0 y max. Las
direcciones fsicas estn en el rango de entre R+0 y R+
max para un valor igual a R.
El usuario solo genera direcciones lgicas y piensa que el
proceso se ejecuta en las ubicaciones comprendidas entre
0 y max. El programa de usuario suministra direcciones
lgicas y esas direcciones lgicas deben ser convertidas
en direcciones fsicas antes de utilizarlas.

Carga dinmica
El tamao del proceso esta
limitado por el tamao de la
memoria fsica.
Para
obtener
una
mejor
utilizacin del espacio de
memoria, se puede utilizar un
mecanismo
de
carga
dinmica.

Carga dinmica

La ventaja del mecanismo de


carga dinmica es que una
rutina no utilizada no se
cargara nunca en la memoria
fsica y, por lo tanto, no
consumen
recursos
innecesariamente
El
mecanismo
de
carga
dinmica no requiere de
ningn soporte especial por
parte del sistema operativo.

Montaje dinmico y bibliotecas compartidas.


Algunos sistemas operativos solo permiten el
montaje esttico mediante el cual las
bibliotecas se tratan como cualquier modulo y
son integradas por el cargador dentro de la
imagen binaria del programa.
El concepto del montaje binario es similar a la
carga dinmica pero el que se pospone hasta el
momento de la ejecucin es el montaje en lugar
de la carga.

Imagen binaria
en memoria.
Montaje dinmico

Tiempo de
ejecucin

Biblioteca de
sistema
cargada
dinmicament
e

Montaje dinmico.
Con el montaje dinmico se incluye el stub
dentro de la imagen binaria para cada referencia
a una rutina de biblioteca.
Puede sustituirse una biblioteca por una nueva
versin y todos los programas que hagan
referencia
a
la
biblioteca
emplearan
automticamente la versin mas reciente.
(sin el mecanismo de montaje dinmico seria
necesario volver a montar todos esos programas
para poder acceder a la nueva biblioteca).

Nota:
A diferencia de la carga
dinmica, el montaje
dinmico suele requerir
algo de ayuda por parte
del sistema operativo.

Anda mungkin juga menyukai