Este documento describe los principales componentes de hardware de un sistema de computación. Explica que los buses transportan bytes de información entre los componentes, y que el tamaño de palabra varía entre sistemas. También describe los dispositivos de entrada/salida, la memoria principal que almacena temporalmente programas y datos, y la unidad central de procesamiento que ejecuta instrucciones almacenadas en la memoria. El procesador incluye una unidad aritmético lógica, registros y un contador de programa.
3. Organización del Hardware
Buses: Están distribuidos en todas las partes del sistema y son
una colección de conductos eléctricos que transportan los bytes
de información entre los otros componentes de hardware. Los
buses están diseñados típicamente para transferir pedazos de
bytes de tamaño fijo conocidos como palabras. El número de
bytes en una palabra (el tamaño de la palabra) es un parámetro
fundamental del sistema que varía a lo largo de diversos sistemas.
Por ejemplo, los sistemas Intel Pentium tienen un tamaño de
palabra de 4 bytes, es decir. Los sistemas de clase servidor tales
como los Intel Itanium y los Sun SPARCS de mayor nivel tienen
tamaños de palabra de 8 bytes.
4. Organización del Hardware
Dispositivos de E/S: son la conexión del sistema al mundo
exterior. Cada dispositivo de E/S está conectado al bus de E/S por
un controlador o por un adaptador. La distinción entre los dos es
principalmente una de empaquetado. Los controladores son
conjuntos de chip en el dispositivo mismo o en el tarjeta de
circuito impreso principal del sistema (a menudo llamado la
tarjeta base o la tarjeta madre). Un adaptador es una tarjeta que se
conecta a una ranura sobre la tarjeta madre. El propósito de cada
uno es transferir la información, hacia un lado y hacia otro entre
el bus de E/S y un dispositivo de E/S.
5. Organización del Hardware
Memoria Principal: La memoria principal es un dispositivo
de almacenamiento temporal donde se guarda un programa y los
datos que este manipula mientras el procesador está
ejecutando dicho programa. Físicamente, la memoria principal
está compuesta de una colección de chips de Memoria Dinámica
de Acceso Aleatorio (DRAM). Lógicamente, la memoria está
organizada como un arreglo lineal de bytes, cada uno de los
cuales posee una dirección única comenzando desde la dirección
cero. En general, cada una de las instrucciones de máquina que
constituyen un programa puede consistir de un número
variable de bytes. Los tamaños de los diversos datos que
corresponden a variables de programas en C varían de acuerdo a
su tipo. Por ejemplo, sobre una máquina Intel ejecutando Linux,
los datos de tipo short requieren dos bytes, los tipos int, float, y
long cuatro bytes y el tipo double requiere ocho bytes.
6. Organización del Hardware
Procesador: La Unidad Central de Procesamiento (CPU, por
sus siglas en inglés – Central Processing Unit), o simplemente
procesador, interpreta (o ejecuta) instrucciones almacenadas en la
memoria principal. En su núcleo está un dispositivo de
almacenamiento (o registro) del tamaño de una palabra
denominado el contador de programa (PC, por sus siglas en
inglés – program counter). En cualquier punto en el tiempo, el
PC contiene la dirección de alguna cierta instrucción en lenguaje
de máquina que está en la memoria principal.
7. Organización del Hardware
La unidad aritmético lógica (ALU, por sus siglas en inglés,
Arithmetic Logic Unit) realiza las operaciones lógicas y
aritméticas sobre los datos.
El conjunto de registros es un dispositivo pequeño de
almacenamiento que consiste de una colección de registros del
tamaño de una palabra, cada uno de los cuales posee un nombre
único.
El contador de Programa (PC, program counter) contiene la
dirección de la proxima instrucción en lenguaje de máquina
que está en la memoria principal.