0% encontró este documento útil (0 votos)
109 vistas9 páginas

Cargadores y Ligadores en Programación

El documento describe los roles de depuradores, ensambladores, ligadores y cargadores en el desarrollo de software. Los depuradores detectan y diagnostican errores al permitir la ejecución paso a paso de programas y examinar el estado del programa. Los ensambladores traducen código de ensamblador a lenguaje de máquina. Los cargadores colocan el código de programa en la memoria para su ejecución. Los ligadores enlazan diferentes módulos de programa para crear un programa ejecutable.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
109 vistas9 páginas

Cargadores y Ligadores en Programación

El documento describe los roles de depuradores, ensambladores, ligadores y cargadores en el desarrollo de software. Los depuradores detectan y diagnostican errores al permitir la ejecución paso a paso de programas y examinar el estado del programa. Los ensambladores traducen código de ensamblador a lenguaje de máquina. Los cargadores colocan el código de programa en la memoria para su ejecución. Los ligadores enlazan diferentes módulos de programa para crear un programa ejecutable.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

INSTITUTO TECNOLÓGICO DE CANCÚN

Lenguajes y Autómatas II
“Depuradores, Ensambladores, Ligadores y Cargadores”.

Docente: Raúl Ramírez Lozano

Alumno: Pool Ramírez Miguel Ángel


¿Qué es un depurador?
Un depurador es un programa que permite detectar y diagnosticar fallos en programas informáticos. El

objetivo de estas herramientas es garantizar, a largo plazo, que el software funcione en todos los dispositivos

y plataformas para los que está pensado.

Por este motivo, muchos depuradores no solo analizan el código fuente del programa, sino también su

interacción con el sistema operativo que lo ejecuta y con los elementos de hardware.
¿Qué funciones realiza un depurador?
Por lo general, los depuradores analizan el código del software paso a paso. Para ello, en el software se
establecen los llamados breakpoints o puntos de interrupción. El depurador reconocerá estos puntos y
los usará para detener la ejecución del software precisamente en dichos lugares. Los desarrolladores
tienen entonces dos opciones:

Pueden examinar el estado del programa en ese momento en concreto. De esta forma pueden
comprobar fácilmente, por ejemplo, si todas las variables implicadas han dado como resultado los
valores esperados.

También pueden ejecutar el programa a partir del punto de interrupción para descartar posibles
problemas o causas de error.
¿Cómo se utilizan los depuradores?
La manera de implementar un depurador para identificar errores de software dependerá, por un lado, del
tipo de debugger en concreto y, por otro, del sistema operativo en el que se ejecute el software analizado (y
el depurador). Como usuario, se ha de comunicar a la herramienta sobre qué proceso ha de actuar: ya sea en
forma de identificador o ID de proceso; o usando un nombre, en cuyo caso el depurador habrá de averiguar,
en primer lugar, el ID correspondiente. A continuación, se inicia la sesión de depuración mediante una
llamada al sistema.

Por lo general, la implementación de herramientas de depuración puede tomar dos enfoques diferentes:

El proceso de detección de errores ocurre dentro del sistema en el que se ejecuta el software analizado.

El proceso de detección de errores no se inicia en el mismo ordenador en el que se ejecuta el software


analizado, sino en un sistema separado: este método se denomina depuración remota o remote debugging.
Depuradores: ¿dónde se usan?
La utilidad de los depuradores y de la depuración en general es muy amplia. Siempre que un programa
informático haya de funcionar a largo plazo y evitar errores en la medida de lo posible, no se puede
prescindir de estas prácticas herramientas de análisis: ya se trate de programar, desarrollar o poner a prueba
un código sencillo, un proceso aislado, un módulo, un programa complejo o todo un sistema operativo.
Ensambladores
Los ensambladores son programas que traducen código ensamblador a lenguaje de máquina, es decir,
código binario. Trabajan muy de cerca con la arquitectura del procesador y, por lo tanto, son particularmente
eficientes y económicos.

Un ensamblador traduce el código escrito en lenguaje ensamblador directamente a código binario, cuyo
código se puede crear manualmente o por máquina. Por ejemplo, algunos compiladores primero convierten
el código del programa en código ensamblador y luego llaman a un ensamblador. Esto, a su vez, funciona
como un compilador en sí mismo y, como paso final, crea el código máquina.
Cargador
Es un programa especial, parte del sistema operativo que tiene como propósito colocar en la memoria las
instrucciones y datos de un programa o información codificada en lenguaje maquina, para que entonces la
computadora pueda procesarla.

Un cargador es un programa que realiza la función de carga, pero muchos cargadores también incluyen
relocalización y ligado.

Algunos sistemas tienen un ligador para realizar las operaciones de enlace, y un cargador separado para
manejar la relocalización y la carga. Los procesos de ensamblado y carga están íntimamente relacionados.
Tipos de Cargadores
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 (cinta, disco, etc.). Sirven para cargar en la memoria
pequeños programas que inician el funcionamiento de una computadora.

Cargadores Absolutos.

Este es un programa que carga cada instrucción del programa objeto en una posición fija y preestablecida.
Por tanto, cada instrucción tiene una dirección absoluta. El cargador absoluto lee simplemente la línea de
código objeto que contiene la dirección de inicio de las instrucciones y datos, y carga las palabras (0 Bytes)
sucesivas en posiciones de memoria sucesivas.
Ligador
Es un programa que enlaza todos los programas o módulos obteniendo lo que denominamos programa
ejecutable.

Es un programa que enlaza distintos módulos o programas que poseen subprogramas. Además incorporan
las denominadas rutinas de librerías en caso de solicitarlas el propio programa.

También podría gustarte