1 INTRODUCCIÓN 1. Diferentes niveles en la arquitectura de
un computador. Máquinas virtuales 2. Máquinas
multinivel actuales. 3. Evolución histórica de las
máquinas multinivel.
2 1. Diferentes niveles en la arquitectura de un computador Un
computador digital es una máquina que puede resolver
problemas ejecutando ciertas instrucciones. Un programa es una
secuencia de instrucciones. Los circuitos electrónicos de
cada computadora reconocen un conjunto limitado de instrucciones
muy simples. Lenguaje máquina es el conjunto de
instrucciones básicas de una computadora.
3 TRADUCTORES Utilizar lenguaje máquina es difícil
y tedioso. Solución: sea L1 el lenguaje máquina y
L2 un lenguaje más fácil de utilizar programa en L2
programa en L1 compilación (compilador)
interpretación (intérprete)
4 MÁQUINAS VIRTUALES Se puede imaginar la existencia de
una máquina virtual cuyo lenguaje máquina es L2. Se
pueden crear L3, L4… cada uno más fácil de
utilizar. nivel n nivel 3 nivel 2 nivel 1 Mn con Ln M3 con L3 M2
con L2 M1 con L1 . .
5 2. MÁQUINAS MULTINIVEL ACTUALES La mayoría de las
máquinas actuales constan de 6 niveles. Los microprogramas
son directamente ejecutados por el hardware. Lenguajes de alto
nivel Lenguaje ensamblador Sistema operativo Máquina
convencional Microprogramación Lógica digital nivel
5 nivel 4 nivel 3 nivel 2 nivel 1 nivel 0 Traducción
(compilador) Traducción(ensamblador) Interpretación
(sistema operativo) Interpretación (microprograma)
Ejecutados directamente
6 Nivel 0: nivel de lógica digital Es el hardware de la
máquina. El nivel inferior sería el nivel de
dispositivo. En este nivel: Puertas lógicas Circuitos
integrados Circuitos combinacionales Circuitos aritméticos
Relojes Memorias Microprocesadores Buses
7 Nivel 1: nivel de microprogramación Existe un programa
llamado microprograma. La función del microprograma es
interpretar las instrucciones del nivel 2. En algunas
máquinas no existe el nivel de
microprogramación.
8 Nivel 2: nivel de máquina convencional Cada fabricante
publica el “Manual de referencia del lenguaje
máquina” para cada uno de los computadores. Las
instrucciones del nivel de máquina las interpreta el
microprograma. En las máquinas en las que no existe el
nivel de microprogramación, las instrucciones del nivel de
máquina son realizadas directamente por los circuitos
electrónicos.
9 Nivel 3: nivel del sistema operativo La mayoría de las
instrucciones de este nivel están también en el
nivel 2 pero además tiene un nuevo conjunto de
instrucciones, una organización diferente de la memoria,
posibilidad de ejecutar 2 o más programas … Las nuevas
instrucciones las interpreta el sistema operativo. Las que son
idénticas a las del nivel 2 las lleva a cabo el
microprograma.
10 Nivel 4: nivel del lenguaje ensamblador Los niveles 4 y
superiores son utilizados por los programadores de aplicaciones.
Los niveles inferiores están diseñados para
ejecutar los intérpretes y traductores de los niveles
superiores y son escritos por los programadores de sistemas. El
ensamblador es el programa que lleva a cabo la traducción
de un programa del nivel 4.
11 Nivel 5: nivel de lenguajes de alto nivel Los lenguajes de
alto nivel son más fáciles de utilizar que los
lenguajes de niveles inferiores. Son utilizados por los
programadores de aplicaciones. Los traductores de programas en
lenguaje de alto nivel pueden ser compiladores o
intérpretes.
12 3. EVOLUCIÓN HISTÓRICA DE LAS MÁQUINAS
MULTINIVEL Historia de la arquitectura de computadores La
arquitectura de los computadores ha ido evolucionando a lo largo
de la historia. Se divide la historia en distintas etapas
llamadas generaciones.
13 Generación 0: 1642-1945 Tecnología: Computadores
mecánicos o electromecánicos con muchas
limitaciones. Personas destacadas: Blaise Pascal construyó
en 1642 una máquina calculadora para sumar y restar.
Charles Babbage construyó en 1834 de propósito
general (almacén, taller y sección de E/S).
Contrató a Ada para la programación de la
máquina. Aiken construyó la Mark I en 1944,
inspirado en los estudios de Babbage.
14 1ª Generación: 1945-1955 Tecnología:
Válvula electrónica de vacío. Modelos: ENIAC
(1946): 18.000 válvulas, 30 toneladas, 1400 m2, 100 Kw,
5.000 sumas por segundo. EDSAC (1949): primer ordenador con
programa almacenado. UNIVAC: primer ordenador comercial. Personas
destacadas: Jonh Von Neumann establece un modelo de la estructura
de un ordenador (memoria,U.A.L., U. de control y U. de E/S). Crea
la idea de computador con programa almacenado.
15 1ª Generación Modo de funcionamiento: Se programa
en lenguaje máquina, propio de cada máquina y muy
complicado. Se desconocen los leng. de programación. No
existe S.O. Se realiza el programa cableado, se solicita hora
para la máquina, se inserta el panel de conexiones en el
computador para ejecutar el programa. Se resolvían
cálculos numéricos. A principios de los 50 se
mejoró el procedimiento con las tarjetas perforadas.
16 2ª Generación: 1955-1965 Tecnología:
Transistor (Bardeen-Brattain, 1947). Ventajas: menor espacio,
menor consumo, más barato y mayor fiabilidad. Esto hace
disminuir el precio y tamaño de los computadores. Modelos:
PDP-1 de DIGITAL Modo de funcionamiento: Lenguajes de alto nivel
: FORTRAN, COBOL, ALGOL, PL/1. Se escribe el programa en papel,
se perfora en tarjetas, se lleva al operador, se recoge el
listado de impresora. Sistema de procesamiento por lotes (con
S.O.)
17 Sistema de procesamiento por lotes lectora de tarjetas Unidad
de cinta Unidades de cinta de entrada del sistema de salida
Unidad de cinta Impresora 1401 de IBM 7094 de IBM 1401 de
IBM
18 Ejemplo de procesamiento por lotes $JOB información
$FORTRAN $LOAD $RUN $END Datos del programa Programa
Fortran
19 3ª Generación: 1965-1980 Tecnología:
Circuitos integrados SSI (hasta 100) y MSI (100-3000) Modelos:
IBM sistema 360 y PDP-8 (DIGITAL) Modo de funcionamiento:
Lenguajes de alto nivel BASIC y PASCAL S.O con
multiprogramación: División de la memoria.
Procedimientos de spooling (operación simultánea de
periféricos conectados en línea). Tiempo
compartido.
20 4ª Generación: 1980-1990 Tecnología: Se
integra la UCP en un sólo chip: el microprocesador.
Circuitos integrados LSI (3000-30000) y VLSI (más de
30000) Modelos: IBM PC (1981), IBM PC XT (1982), IBM PC AT
(1984), IBM PS/2 (1987), VAX (DIGITAL,1980), CRAY X-MP (1983)
Modo de funcionamiento: Software fácil de usar. Sistemas
operativos MS-DOS, UNIX.. Sistemas operativos de red y sistemas
operativos distribuidos.
21 5ª Generación: 1990 en adelante Tecnología:
Circuitos con más de un millón de componentes.
Nuevas arquitecturas: paralelismo. Tecnología
óptica. Modelos: CONNECTION MACHINE, máquina
masivamente paralela. Modo de funcionamiento: Inteligencia
artificial y sistemas expertos.
22 Evolución de los niveles Los primeros computadores
digitales (años 40) sólo tenían 2 niveles
(convencional y lógica digital). Los circuitos digitales
eran voluminosos, poco confiables y difíciles de
construir. El nivel de microprogramación se
añadió para: simplificar la electrónica
facilitar la escritura de compiladores ejecutar los programas
más rápidamente (ROM más rápida que
la RAM) en los 70 estaba plenamente difundido En los 50
aparecieron los ensambladores y compiladores. En los 60 aparece
el sistema operativo.
23 Evolución de los niveles Cuanto más complicado
el lenguaje máquina, más grande, complicado y lento
el microprograma (ya que necesitan procedimientos). La velocidad
de la memoria RAM se aumentó con el avance de la
tecnología (memorias de semiconductores). Es
difícil escribir, depurar y mantener el
microcódigo. A principios de los 80 se elimina el nivel de
microprogramación para dar paso a las máquinas
RISC.