Cargadores y ligadores

Solo disponible en BuenasTareas
  • Páginas : 5 (1181 palabras )
  • Descarga(s) : 0
  • Publicado : 24 de mayo de 2011
Leer documento completo
Vista previa del texto
Cargadores y Ligadores
Para poder entender mejor la función de un cargador y un ligador es importante tener el concepto de cada uno bien claro:
Un cargador es un programa del sistema que realiza la función de carga es decir llevar el programa objeto a la memoria para su ejecución, el programa es guardado en algún dispositivo de almacenamiento secundario.
Un ligador es un programa de sistemaque combina dos o más programas objeto separados y permite que se hagan referencias unos a otros, es decir, que cada uno de estos programas pueden hacer referencia a código ó variables de los otros programas con los que está enlazado.
Algunos sistemas tienen un ligador para realizar las operaciones de enlaces y un cargador separado para manejar la relocalización y la carga. Es muy importantemencionar que los procesos de ensamblado y carga de un programa están muy relacionados.
La tarea fundamental de un cargador consiste en un juego de instrucciones que permiten al dispositivo de entrada asignar la dirección de inicio de la memoria y asegurar que la computadora lea el programa y lo cargue byte a byte.
Características del cargador
El programador necesita especificar cuando ensambla elprograma la dirección real en la que se cargará la memoria. En máquinas más grandes y avanzadas, la situación no es tan fácil porque a menudo se quieren ejecutar a la vez varios programas independientes compartiendo la memoria.
El cargador se encarga de la relocalización y ligado del programa, además de las funciones básicas. La necesidad de relocalizar los programas es una consecuencia directadel cambio a computadoras más grandes y potentes

Características del ligador
-Enlazar código intermedio compilado independientemente en un solo módulo de carga resolviendo las diferencias entre Tokens.
-Incorpora las denominadas rutinas de librerías en caso de solicitarlas el propio programa.
-Reducir procedimientos traducidos por separado y enlazarlos para que se ejecuten como una unidadllamada programa binario ejecutable.

Funciones
Las funciones más importantes de un cargador son:
Colocar un programa objeto en la memoria e iniciar su ejecución. Si tenemos un cargador que no necesita realizar las funciones de ligado y relocalización de programas, su operación es simple pues todas las funciones se realizan en un solo paso. Se revisa el registro de encabezamiento para comprobarse ha presentado el programa correcto para la carga. A medida que lee cada registro de texto, el código objeto que contiene pasa a dirección de la memoria indicada. Cuando se encuentra el registro de fin, el cargador salta a la dirección especificada para iniciar la ejecución del programa cargado. Un programa objeto contiene instrucciones traducidas y valores de datos del programa fuente yespecífica direcciones en memoria dónde cargaran estos elementos.
Relocalización que modifica el programa objeto de forma que puede cargarse en una dirección diferente de la localidad especificada originalmente.
Ligado que combina dos o más programas objeto independientes y proporciona la información necesaria para realizar diferencias entre ellos.

Tipos de cargadores y Ligadores
CargadoresBootstrap: el programa cargador una vez, situado en la memoria de la computadora, cargará el programa de aplicación y los datos. Pero, previamente, se ha debido cargar el cargador en la memoria.
Cargadores iniciales: indican a la computadora la forma de poner, dentro de la memoria principal unos datos que están guardados en un periférico de memoria externa. Sirven para cargar en la memoria pequeñosprogramas que inician el funcionamiento de una computadora.
Cargadores absolutos: el programa cargador pone en memoria las instrucciones guardadas en sistemas externos
Cargadores con reubicación: en ocasiones un mismo programa necesita ejecutarse en diferentes posiciones de memoria. Para esto la traducción debe estar realizada en forma adecuada, es decir no utilizando referencias absolutas a...
tracking img