4.2.1 Carga Absoluta y Relocalizable
El proceso de carga absoluta consiste en que con la máquina vacía ó inactiva no hay necesidad de hacer relocalización de programas tan solo se puede especificar la dirección absoluta del programa que se cargue en primer lugar.
En la mayoría de los casos este programa es el sistema operativo que ocupa un lugar predefinido en la memoria. Esto significa que se necesitan algunos medios para realizar las funciones de el cargador absoluto. Una opción es que el operador introduzca en la memoria el código objeto de un cargador absoluto, utilizando los interruptores en la consola del computador.
Algunos computadores requerían que el operador hiciera exactamente eso. Sin embargo este proceso es demasiado incomodo y propenso a errores para ser una buena solución del problema.
Relocalización:
Los cargadores que permiten la relocalización de programas se denominan cargadores relocalizadores o relativos.
El primer método se utiliza un registro de modificación para describir cada parte del código objeto que se ha de cambiar al relocalizar el programa. En la Fig. 3.3 se muestra un programa SIC/XE que se emplea para ilustrar este primer método de especificación de la relocalización. La mayoría de las instrucciones de este programa manejan direccionamiento relativo o inmediato. Las únicas partes del programa ensamblado que contienen direcciones reales son las instrucciones con formato extendido de las líneas 15, 35 y 65.
En la Fig. 3.4 se muestra el código objeto correspondiente al código fuente de la Fig. 3.3. Obsérvese que hay un registro de modificación para cada valor que se ha de cambiar durante la relocalización (en este caso, 15, 35 y 65). Cada registro de modificación especifica la dirección inicial y la longitud del campo cuyo valor se va alterar y después describe la modificación a realizar. En este Ejemplo, todas las modificaciones suman el valor del símbolo COPY, que representa la dirección inicial del programa.
Algunos computadores proporcionan una posibilidad de relocalización por hardware que elimina en parte la necesidad de que el cargador efectúe la relocalización de programas.