viernes, 22 de mayo de 2015

POLITICAS DE REUBICACION Y REEMPLAZO

Politica de Reubicacon 

La re ubicación de un programa, se refiere a la capacidad de cargar y ejecutar un programa determinado en una posición arbitraria de memoria, en contraposición a un conjunto fijo de posiciones especificas durante la compilación de dicho programa.

Las instrucciones de un proceso cargado en memoria contendrán referencias a posiciones de memoria de dos tipos.


Referencias a posición de memoria

Tipo 1.  Referencias a datos empleados en instrucciones de carga, almacenamiento y algunas instrucciones aritmetico-logicas.
Tipo 2.  Referencias a otras instrucciones empleadas fundamentalmente en bifurcaciones de control de flujo o en instrucciones de llamadas.

Tipos de Direcciones

Tipo 1.  Una dirección lógica o virtual es un identificador utilizado para referenciar información dentro del espacio de direcciones de un programa y, por tanto, es independiente de la asignación actual de datos a memoria, debiéndose realizar una traducción a dirección física, antes de poder realizar un acceso a memoria.
Tipo 2.  Una dirección física o absoluta designa una posición real de memoria física, donde se almacena información en tiempo de ejecución.

Tipos de Esquemas

Dependiendo de como y cuando, tenga lugar la traduccion del espacio de direcciones virtuales al espacio de direcciones fisicas, en un esquema de reubicacion determinado, pueden considerarse dos tipos de estrategias:
Tipo 1.  Reubicación estática.
Tipo 2.  Reubicación Dinámica.

Reubicacion Estatica 

Implica generalmente que la reubicación es realizada, antes o durante la carga del proceso en memoria.
Las constantes(valores literales), los desplazamientos relativos al PC, no dependen de esta condición y no necesitan ser ajustados durante la reubicación.

Reubicacon Dinamica 

Implica que la correspondencia entre el espacio de direcciones virtuales y el espacio de direcciones físicas se efectúan en tiempo de ejecución. Normalmente con asistencia de hardware.
Cuando el proceso en cuestión esta siendo ejecutado, todas sus referencias a memoria son reubicadas durante la ejecución antes de acceder realmente a la memoria.


Politcas de Reemplazo 

Cuando todos los marcos de memoria principal están ocupados y es necesario traer a memoria una nueva pagina para atender un fallo de pagina.
La política se encarga de seleccionar la pagina a reemplazar de entre las que se encuentren actualmente en memoria.
<



Política de Reemplazo 

Algunos de los marcos de memoria principal pueden estar bloqueados, cuando un marco se encuentra bloqueado, la pagina cargada actualmente en el no puede ser reemplazada.
La mayoria de nucleo del SO asi como las estructuras de control son albergados en marcos bloqueados.

Política de Reloj 

La forma mas simple de esta política requiere asociar un bit adicional a cada marco, denominado bit de uso. Cuando se cargue una pagina por primera vez, este bit se pone a 0 y cuando se hace referencia posteriormente a la pagina el bit de uso se pone a 1. Para el algoritmo de reemplazo de paginas, el conjunto de marcos candidatos a ser reemplazado se considera como un buffer circular con un puntero asociado.

El alcance es local si los candidatos son de un solo proceso y global si procede de toda la memoria.

Cuando llega el momento de reemplazar una pagina, el SO recorre el buffer buscando un marco con el bit de uso a 0, eligiendo para reemplazar el primero que encuentre. Cada vez que se encuentra un marco con el bit de uso a 1, se pone a 0.



No hay comentarios:

Publicar un comentario