Arquitectura de computadoras
Qué es un computador?[Hamacher 96]:”Un computador es una máquina de cálculo electrónica de alta
velocidad que acepta información digitalizada, la procesa atendiendo a una
lista de instrucciones que almacena internamente, y
produce la correspondiente información de salida”
Introducción
Procesamiento de datos Almacenamiento de datos Transferencias de datos entre el
computador y el exterior Control de las anteriores operaciones
La excesiva generalidad de estas funciones se debe a que la especialización funcional de un computador ocurre cuando se programa y no cuando se diseña
Funciones
Procesador : controla el funcionamiento del computador y procesa los datosSubsistema de memoria: almacena datos
Subsistema de entrada/salida Subsistema de interconexión: transfiere
datos entre el computador y el entorno externo
: proporciona un medio de comunicación entre el procesador, la memoria y la E/S
Componentes estructurales
Niveles de descripción de un computador
Modelo Von Neuman
Elementos de la CPU
Modelo de Máquinas Virtuales
Problema: Comunicación Hombre-Máquina
9
Necesito resolver un problema!
Modelo de Máquinas VirtualesRelación Jerárquica de la máquina física y las capas superiores abstractas Para simplificar la complejidad de ésta
relación cada capa se apoya en la capa inferior.
Los computadores pueden estructurarse como una serie de abstracciones (niveles o máquinas virtuales)
Cada Máquina Virtual (MV) posee su propio “lenguaje de máquina”.
10
Modelo de Máquinas VirtualesCada lenguaje se basa en su predecesorEl nivel más bajo es el más simple y el más alto el
más complejo
11
Modelo de Máquinas Virtuales Procesamiento de las instrucciones
◦ En una MV, una instrucción en un lenguaje de nivel n se ejecuta mediante una sucesión de instrucciones correspondientes en el lenguaje del nivel inferior (n-1)
◦ Existen dos métodos: Traducción e Interpretación
12
Modelo de Máquinas Virtuales
TRADUCCIÓN INTERPRETACIÓNGenera un nuevo código NO Genera un nuevo códigoEl proceso se realiza una sola vez El proceso de se realiza en cada
ejecuciónLa ejecución es muy rápida La ejecución es más lentaNivel bajo de portabilidad pero mayor flexibilidad
Nivel alto de portabilidad pero menor flexibilidad
Una vez realizada la compilación no es necesario el código fuente por lo que permite “ocultar” el código original
El código fuente es necesario en cada ejecución y por ende no puede “ocultarse”
Los errores sintácticos se detectan durante la compilación
Los errores sintácticos se detectan durante la ejecución
Un programa compilado puede comprometer la ejecución de los otros procesos
Un programa interpretado normalmente puede ser interrumpido sin dificultad
13
Modelo de Máquinas Virtuales
14
Máquinas Virtuales Multinivel Organización Estructurada
1515