Está en la página 1de 13

CARGADORES Y LIGADORES

Los compiladores y ensambladores suelen traducir un procedimiento a la vez Guardan en memoria secundaria el resultado de la traduccin. Antes de que pueda ejecutarse el programa, todos los procedimientos traducidos deben recuperarse y ligarse correctamente.

La traduccin completa de un programa fuente se efecta en dos pasos: Compilacin o ensamblaje de los procedimientos fuente Encadenamiento (linking) o montaje de los mdulos objeto.

CARGADOR
Es un programa especial, parte del sistema operativo que tiene como propsito colocar en la memoria las instrucciones y datos de un programa o informacin codificada en lenguaje mquina, para que entonces la computadora pueda procesarla. Un cargador es un programa que realiza la funcin de carga, pero muchos cargadores tambin incluyen relocalizacin y ligado. Algunos sistemas tienen un ligador para realizar las operaciones de enlace, y un cargador separado para manejar la relocalizacin y la carga. Los procesos de ensamblado y carga estn ntimamente relacionados.

LIGADOR
Es un programa que enlaza todos los programas o mdulos obteniendo lo que denominamos programa ejecutable. Es un programa que enlaza distintos mdulos o programas que poseen subprogramas. Adems incorporan las denominadas rutinas de libreras en caso de solicitarlas el propio programa.

FUNCION
CARGADOR Colocar un programa objeto en la memoria e iniciar su ejecucin LIGADOR
-Enlazar cdigo intermedio compilado independientemente en un solo mdulo de carga

-Incorpora las denominadas rutinas de libreras en caso de solicitarlas el propio programa. - Reducir procedimientos traducidos por separado y enlazarlos para que se ejecuten como una unidad llamada programa ejecutable.

TIPOS DE CARGADORES
CARGADORES INICIALES
Indican a la computadora la forma de poner, dentro de la memoria principal, unos datos que estn guardados en un perifrico de memoria externa (cinta, disco, etc.). Sirven para cargar en la memoria pequeos programas que inician el funcionamiento de una computadora. Algunas computadoras de carcter general no tienen en memoria ningn programa de forma permanente y cuando se desconectan pierden toda la informacin de su memoria interna. Al volverlos a conectar no son capaces de controlar ningn perifrico (teclado, discos, etc.).

Cargadores absolutos

Este es un programa que carga cada instruccin del programa objeto en una posicin fija y preestablecida. Por tanto, cada instruccin tiene una direccin absoluta. El cargador absoluto lee simplemente la lnea de cdigo objeto que contiene la direccin de inicio de las instrucciones y datos, y carga las palabras (o bytes) sucesivas en posiciones de memoria sucesivas.
Los programas y datos se deben almacenar cada vez en posiciones de memoria distintas. Si se utilizan cargadores absolutos, el programa objeto se tendr que modificar para que refleje la nueva posicin de inicio de memoria. Esta es una actividad larga y sujeta a errores. En tales situaciones, se utilizan cargadores con reubicacion.

Cargadores con reubicacin

En ocasiones, un mismo programa necesita ejecutarse en diferentes posiciones de memoria. Para esto la traduccin debe estar realizada en forma adecuada, es decir, no utilizando referencias absolutas a direcciones de memoria, sino referencias relativas a una direccin especial llamada direccin de reubicacin.
El clculo de las direcciones reubicables lo realiza el propio cargador a medida que va guardando las instrucciones en el espacio de memoria que le indique el usuario o el propio sistema operativo de la mquina.

Cargadores ligadores Conocidos tambin por su trmino ingls Link editor o simplemente Linker, A la accin de montar se le llama asimismo vulgarmente <<lincar>>. Montar un programa consiste en aadir al programa objeto obtenido en la traduccin las rutinas externas a las que hace referencia dicho programa. El ensamblador debe permitir dichas referencias y las rutinas deben estar a su vez en lenguaje mquina guardadas en algn elemento accesible por el montador. Dichas rutinas se encuentran guardadas en un fichero especial al que suele denominarse librera, porque estn almacenadas todas las rutinas externas susceptibles de ser utilizadas por los diferentes programas del usuario.

All va el programa ligador cuando esta realizando el montaje de un programa a buscarlas y las adjunta al programa objeto.

CARGADORES BOOTSTRAP
El programa cargador, una vez situado en la memoria del computador, cargar el programa de aplicacin y los datos. Pero, previamente, se ha debido cargar el cargador en la memoria y esto se puede realizar por uno de los mtodos siguientes:

Entrada Manual: Mediante el teclado. Entrada por ROM: Es posible tener las instrucciones de inicializacin almacenadas permanentemente en alguna porcin de la ROM, Al estar el programa almacenado en ROM se elimina tambin la posibilidad de borrados accidentales.

TIPOS DE LIGADORES
EDITORES DE LIGADO. La diferencia fundamental entre un editor de ligado y un cargador ligador es: Primero se ensambla o compila el programa fuente, produciendo un programa objeto (que puede contener varias secciones de control diferentes). Un cargador ligador realiza todas las operaciones de ligado y relocalizacin, incluyendo bsqueda automtica en bibliotecas, si se especifica, y carga el programa ligado directamente en la memoria para su ejecucin. Por otro lado, un editor de ligado produce una versin ligada del programa (llamada a menudo mdulo de carga o imagen ejecutable), que se escribe un archivo o biblioteca para su ejecucin posterior. Cuando el usuario esta listo para ejecutar el programa ligado, se puede utilizar un cargador relocalizador simple para cargar el programa en la memoria.

LIGADOR DINAMICO. El ligador dinmico ofrece algunas ventajas sobre los otros tipos de ligado. Proporciona la posibilidad de cargar las rutinas slo cuando y si se necesitan. Si las subrutinas son grandes o tienen muchas referencias externas, se pueden conseguir ahorros considerables de tiempo y espacio de memoria. Cuando se utiliza el ligador dinmico, la asociacin de una direccin real y el nombre simblico de la rutina llamada no se hace hasta que se ejecuta la proposicin llamada.

CONCEPTO DE ENSAMBLADOR
Tipo de herramienta que traduce un archivo de cdigo fuente escrito en lenguaje ensamblador, a un archivo objeto que puede ser ejecutado por la computadora. Se llaman ensambladores los programas encargados de traducir los programas escritos en ensamblador a cdigo binario.Fjese en que tanto el programa traductor como el lenguaje se llaman del mismo modo: ensamblador. Como el lenguaje ensamblador es muy prximo al binario, estos traductores son programas relativamente sencillos.

También podría gustarte