Professional Documents
Culture Documents
Nivel 5
Nivel 4
Nivel 3
Nivel 4
Mquina virtual M4, con lenguaje de mquina L4 Los programas en L3, son interpretados por programas que se ejecutan en M2 o M1, o son traducidos a L2 oL1. Los programas en L2, son interpretados por programas que se ejecutan en M1, o son traducidos a L1. Los programas en L1, pueden ser ejecutados directamente por los circuitos electrnicos. Nivel 2
Nivel de mquina del sistema operativo Interpretacin parcial Nivel de mquina del sistema convencional (sistema operativo)
Nivel 3
Interpretacin (microprograma) Nivel 1 Nivel de microprogramacin Los microprogramas son ejecutados directamente por el hardware
Nivel 2
Nivel 0
5
Nivel 1
Computadora real
Usuario final (no programa). Nivel 6 Aplicaciones dedicadas.
Traducidos (bases datos, juegos).
Los sistemas informticos son complejos. Se disean, estudian y organizan por niveles. Cada nivel se construye con componentes proporcionados por el nivel inferior. Y proporciona nuevos componentes ms complejos al nivel superior.
...
Lenguaje mquina
Comuertas, etc.
transistores
Nivel 1 Microprograma.
El microprograma es ejecutado directamente por el hardware.
Visin Multinivel
Facilita la programacin. Permite crear mquinas virtuales sobre un hardware nico.
Lenguaje L2 Lenguaje L1 Hardware
A un mismo modelo funcional pueden corresponder distintos modelos estructurales. Los modelos se emplean con el fin de aplicarlos en la prctica y resolver un determinado problema.
L2 est ms prximo a los algoritmos que permiten resolver problemas complejos. L1 (L.M.): Primitivas de uso convenientes. Permite implementaciones flexibles. Independiza del HW.
9 10
Resultados
Por INTERPRETACION: Un programa intrprete ejecutndose en el nivel L1 busca, decodifica y ejecuta las sentencias de L2.
Cada reejecucin del programa L2 interpretacin. nueva
11
La idea puede extenderse a varios niveles. Programador de aplicaciones Niveles altos Programador de sistemas Niveles bajos
12
Objetos y ejecutables
13
14
Vinculador
(linker, link-editor)
No cambia de nivel (no traduce ni interpreta). Ms rpido que el ensamblador, lo que facilita la programacin modular. Tareas:
reubicacin (si se juntan varios mdulos).
dir. reubicada = dir. reubicable + DIC.
Cargador (loader)
Busca el ejecutable en almacenamiento (disco, red, etc.), y lo carga en memoria. Resuelve las reubicaciones dinmicas. Inicializa algunos registros (p.ej.: SP). Inicializa el contador de programa, y transfiere el control del procesador al programa cargado.
15 16
Ejemplos
Ejemplos de diferentes tipos de lenguajes basados en :
Una rutina que calcula e imprime la suma de los cuadrados de los enteros entre 0 y 100.
17
18
19
20
Assembler
Assembler
Assembler
Compilador
Archivo Objeto
B i b l i o t e c a
Archivo Objeto
Archivo Objeto
Assembler
Vinculador
Vinculador
Archivo Ejecutable
21
Archivo Ejecutable
22
Niveles de representacin
Aplicacin (Firefox) Sistema Compilador Operativo (GNU/Linux) Assembler
Conjunto de Instrucciones Procesador Memoria Sistema de E/S
Organizacin de Computadoras
Software Hardware
Seales de Control
24
Procesador (CPU)
Bus de memoria
Coming Next