Tenemos ya el Sistema Informático definido a nivel de componentes, pero necesitamos dar un paso más. Entre hoy y mañana entraremos en detalle respectivamente en el tema de los dispositivos y controladores más básicos del Sistema Informático.
Durante todos estos días habréis visto que siempre se intenta obtener una completa estandarización en todas aquellas cosas que se hacen. Al haber seleccionado esta arquitectura, el mapeo de los componentes se realizará siempre en posiciones conocidas. El Bus de Direcciones o Espacio de Direcciones es el lugar donde se encuentran todos los registros (de 1 bit) disponibles agrupados en lo que llamamos dispositivos y controladores.
El
primer sector "
va desde la dirección 0x00 hasta la 0xFF, por tanto, ocupa 0xFF+1 (28 = 256) direcciones, que son justamente las que soportan los Sistemas Informáticos más pequeños" dice la documentación. Y así es. Si recordamos, los
punteros de la
MMU están compuestos por
páginas de 8 bits, por lo tanto, el puntero más pequeño (con una sola página) podrá apuntar a
28 direcciones como máximo, es decir esas
256 direcciones que ocupa el
primer sector. Como el número de direcciones es igual al número de bits disponibles, este tipo de
Sistema, con una
MMU de sólo una
página, sólo podría ejecutar
código objeto de hasta
256 bits (
32 bytes) o lo que es lo mismo,
64 instrucciones básicas, lo que es realmente poco para el fin que perseguimos.
En el
primer sector de los SIMs siempre se encuentra el dispositivo "
Gestor de Arranque Mínimo". Este dispositivo está formado por cuarto elementos:
- Instrucción de salto: es un trozo de código objeto fijo que posiciona el puntero PC sobre la primera dirección del segundo sector.
- Área de datos: en la parte central del dispositivo se encuentra un área de datos que incluyen información sobre el Sistema Informático.
- Gestor del Sistema Eléctrico: en las últimas direcciones de este sector (0xFC y 0xFD ) están dos bits que permiten el apagado y el reiniciado del Sistema Informático de forma lógica.
- Altavoz del sistema: en la penúltima dirección (0xFE), está un pequeño altavoz que emitirá un pitido cada vez que pongamos el valor 1 en él.
- Bit de continuidad: en la última dirección (0xFF), hay un bit que indica si existe y está disponible el segundo sector.
El segundo sector "va desde la dirección 0x00.01.00 hasta la 0xFF.FF.FF, por tanto, ocupa 0xFF.FF.00 (224 = 16.776.960) direcciones, que son justamente las que soportan los Sistemas Informáticos Reducidos de 24 bits" dice la documentación. Debido a que en este sector se encuentran la mayoría de los controladores, lo trataré mañana.
Y por último, el tercer sector es el segmento que "va desde la dirección 0x00.00.00.00.01.00.00.00 hasta la dirección 0xFF.FF.FF.FF.FF.FF.FF.FF, ocupando por tanto 0xFF.FF.FF.FF.FF.FF.FF.00 (264 = 18.446.744.073.709.551.360) direcciones, que coincide con el número de direcciones que logran apuntar los punteros de los Sistemas Informáticos Extendidos de 64 bits" según indica la documentación. Aquí se encuentra exclusivamente la memoria RAM. Este sector teóricamente tiene un límite de hasta 2.147.483.647 gigabytes de memoria RAM disponible; es obvio que si se necesita más, se puede anexar a este último sector otro nuevo simplemente añadiendo una página más a la MMU.