La arquitectura lógica del computador es la visión que tiene un programador de la máquina sobre la cual se pretende programar el núcleo de un sistema operativo. En esta visión no interesa si el computador tiene memoria caché o si el procesador usa pipeline para ejecutar las instrucciones de máquina, puesto que éstas son características que no influyen en el cómo se programa la máquina (salvo si se considera la eficiencia).
En cambio en la arquitectura lógica de un computador sí interesa cuál es su lenguaje de máquina, cómo se comanda/examinan los dispositivos, cómo se reciben las interrupciones, etc. Un programador del sistema operativo sí necesita conocer esta información para saber cómo programarlo.
El programador debe ser capaz de direccionar cada palabra en memoria real, cada puerta de dispositivo que posea el computador, cada pixel de la memoria de video y cada palabra de la memoria ROM para el bootstrap del sistema. El conjunto de direcciones que se pueden usar para estos fines se denomina el espacio de direcciones reales del computador (ver figura ).
Figure: Espacio de direcciones de un computador.
Un programador comanda o examina un dispositivo escribiendo o
leyendo en la dir