16
JESUS MARTINEZ FAJARDO

Elementos de la programación de sistemas

Embed Size (px)

Citation preview

Page 1: Elementos de la programación de sistemas

JESUS MARTINEZ FAJARDO

Page 2: Elementos de la programación de sistemas

CARGADORES

ENSAMBLADORES

MACROPROCESADORES

SISTEMAS OPERATIVOS

COMPILADORES

Page 3: Elementos de la programación de sistemas

CARGADORESLa programación de sistemas se refierea la creación de programas cuyafinalidad es servir a otros programas.

Entre los programas que se manejan en la programación de sistemas se encuentran: los sistemas operativos, los compiladores, los manejadores de base de datos.

Page 4: Elementos de la programación de sistemas

Un cargador es un programa quecoloca en la memoria para suejecución, el programa guardadoen algún dispositivo dealmacenamiento secundario.

Page 5: Elementos de la programación de sistemas

Dependiendo de la manera en quese manejan los procesos de ligas ycarga, podemos clasificar a loscargadores en: cargadoresiniciales, absolutos, conreubicación y ligadores.

Page 6: Elementos de la programación de sistemas

Cargadores Iniciales: son aquellos queindican ala PC la forma de poner enmemoria principal, unos datosalmacenados en un periférico de memoriaexterna (cintas, discos, etc.) sirven paracargar con la memoria pequeñosprogramas que inician el funcionamientode la computadora.

Page 7: Elementos de la programación de sistemas

Cargadores Absolutos: como ya semenciono, el programa cargador pone enmemoria las instrucciones guardadas ensistemas externos. Si dichas instruccionesse almacenan siempre en el mismo espaciode memoria (cada vez que se ejecute elprograma cargador), se dice que es uncargador absoluto.

Page 8: Elementos de la programación de sistemas

Cargadores con publicación: en ocasiones,un mismo programa necesita ejecutarse endiferentes posiciones de memoria. Paraesto, la introducción debe realizarse deforma adecuada, es decir, sin emplearreferencias absolutas a direcciones dememoria, si no referencias relativas a unadirección especial llamada Dirección deReubicación.

Page 9: Elementos de la programación de sistemas

El calculo de las direcciones dereubicación las hace el mismo cargadora medida que va cargando lasinstrucciones en el espacio de memoriaque le indique al usuario o el sistemaoperativo de la maquina.

Page 10: Elementos de la programación de sistemas

Cargadores ligadores: conocidostambién como “Link Editor” porsu término en ingles osimplemente “Linker”, ala acciónde motor se le llama vulgarmente“Lindar”.

Page 11: Elementos de la programación de sistemas

Montar un programa consiste en añadir alprograma objeto. Obteniendo en latraducción las rutinas externas a las quehace referencia dicho programa.

El ensamblador debe permitir dichasreferencias y las rutinas debe estar a suvez en lenguaje maquina guardadas enalgún elemento accesible al montaje.

Page 12: Elementos de la programación de sistemas

Generalmente dichas rutinas seencuentran guardadas en ficherosespeciales llamados “Librerías”;donde están almacenadas todas lasrutinas externas susceptibles a serempleados por los diferentesprogramas del usuario.

Allí va el programa ligador cuandoesta realizando el montaje de unprograma a buscarlas y las adjunta alprograma objeto.

Page 13: Elementos de la programación de sistemas

En el proceso de carga reubicable(relocalizable), un mismo programa puedeejecutarse en diferentes posiciones dememoria. Para esto, el programa objetodebe utilizar referencias relativas a unadirección especial llamada dirección dereubicación.

EI cálculo de las direcciones reubicables esrealizado por el cargador a medida quo vaubicando las instrucciones en el espacio dememoria que le indique el sistemaoperativo.

Page 14: Elementos de la programación de sistemas

Cuando se utilizan subrutinas en unprograma, el código ejecutable de cada unade ellas debe encontrarse en memoria altiempo de ejecución. Para esto, antes decargar un programa, debe ligarse su códigoobjeto con los códigos objeto (guardadosen uno o más archivos) de cada una de lassubrutinas invocadas por él, obteniendo asíun programa ejecutable que contiene tantoel código del módulo invocador como elcódigo de los módulos invocados.

Page 15: Elementos de la programación de sistemas

En este punto, es posible guardar elresultado del proceso de liga en un archivoque podrá ser utilizado por un cargador, oel mismo programa ligador puede tambiénrealizar la tarea de carga. Esto último evitael tener que guardar el código ejecutable enun archivo, con lo que se ahorra espacio endisco. Este ahorro de espacio en disco sepaga con el tiempo gastado al tener queligar todos los módulos cada vez que senecesite ejecutar el programa.

Page 16: Elementos de la programación de sistemas

Este enlace se llama estáticoporque se realiza antes deejecutar el programa.

Existe otro proceso llamadoenlace dinámico, el cual consisteen enlazar en tiempo deejecución los módulos quecontienen a las subrutinas.