El BIOS en las computadoras PC compatibles


BIOS es la abreviatura de “Basic Input and Output System” (sistema básico para control de entradas y salidas de datos en un computador). Aunque el sistema operativo se considera que está grabado en un disco, la verdad es que una parte importante está grabada en una porción de la memoria ROM del computador. Se le denomina BIOS, y se dedica fundamentalmente al control básico o primordial de los periféricos de entrada/salida.

Entre los servicios básicos del ROM BIOS está el control de todos los dispositivos periféricos, como el monitor de video, el teclado y las unidades de disco, así como el mantener actualizada la fecha y la hora del día. Sus programas convierten un comando simple, tal como la orden para leer algo del disco, en una secuencia de pasos necesarios para ejecutar dicha tarea, incluyendo la detección y corrección de errores. El BIOS sirve de intermediario entre los programas que se están ejecutando en la memoria RAM (incluyendo al DOS) y los elementos periféricos (hardware).

Esto significa que trabaja en las dos direcciones: Por un lado, recibe de los programas de aplicación petición de sus instrucciones para el manejo estándar de los dispositivos de entrada/salida de datos. El programa invoca estos servicios del BIOS de la memoria ROM mediante la combinación de un número de interrupción que indica el objeto solicitado, tal como los servicios de la impresora) y un número de servicio (que indica cuál tarea se va a ejecutar).

Por el otro lado, el BIOS se comunica con los elementos del computador (pantalla, unidades de disco, etc.) mediante comandos detallados con códigos requeridos por cada dispositivo. Este lado del ROM BIOS también maneja cualquier interrupción de hardware que un dispositivo genere para solicitar atención. Por ejemplo, cada vez que el usuario pulsa una tecla, el teclado genera una señal de solicitud de interrupción que le permite al BIOS darse cuenta de ello.

En el manejo de los discos, por ejemplo, el control no es lo suficientemente sofisticado como para manejar información a nivel de archivos, pero puede hacer operaciones simples, tal como leer y escribir en sectores individuales.

Debido a que el número de lados de grabación, cantidad de pistas y sectores varía según el diseño y capacidad de la unidad de disco, el BIOS necesita conocer exactamente las características de las unidades de disco puestas en el computador, esto es, necesita saber cuál es la geometría del disco. Parte del BIOS se denomina fixed-disk BIOS (sistema básico de entrada-salida para el disco fijo, o duro). Contiene una tabla que lista la geometría de un cierto número de unidades de disco, usualmente los más comunes, además algunos BIOS incluyen rutinas de autodetección de los parámetros de los discos duros. Para hacer el formato de bajo nivel del disco duro se precisa saber cuál numero le ha sido asignado en el BIOS a cada referencia, o conocer el número de cilindros y de cabezas.

En algunos manuales del “system board” viene una tabla con los números o tipos asignados a las referencias comerciales más comunes, según el BIOS incluido en el sistema. Otras veces dicha tabla de consulta viene grabada también en la memoria ROM, formando parte de unas rutinas para hacer el SETUP (configuración) al computador. En cada nueva versión de BIOS se incluyen más referencias de discos en la tabla (más geometrías).

Para informar al BIOS el tipo de disco puesto en el computador, el tamaño de la memoria, la fecha actual y el tipo de monitor, es necesario correr un programa denominado SETUP, el cual puede estar grabado en el mismo integrado EPROM del BIOS, o ser parte de otras rutinas localizadas en un disquete paro diagnóstico, usualmente suministrado por el vendedor del sistema (esto era el caso de las XT).

Un computador del tipo XT tiene apenas un chip ROM para las rutinas de arranque y para el BIOS del sistema, de 128 kilobits de capacidad. Algunas computadoras AT tenían dos chips de 256 kilobits: Uno, marcado H (high), con la mitad correspondiente a los bits de mayor prioridad de las rutinas, y otro, L (low), para los de menor prioridad. Actualmente se acostumbra utilizar un solo chip EEPROM o FlashROM de 512 kilobits o más para almacenar el software del BIOS de forma que pueda ser actualizado si es necesario con un software especial suministrado por el fabricante.

Como se mencionó, en la memoria ROM existen programas hasta para cuatro funciones distintas en el computador, pero los del BIOS son posiblemente la porción más importante. Se los denomina ROM BIOS, y permanecen activos cuando el computador está trabajando.

1- Rutinas de arranque, que son los programas encargados de poner en funcionamiento al computador (start-up routines ó rutinas POST).

2- El ROM BIOS, que es un conjunto de rutinas en lenguaje máquina para desempeñar funciones de acople entre los programas del usuario (incluyendo al DOS) y los aparatos de Entrada/Salida de datos, entre otras cosas.

3- El ROM BASIC, conjunto de instrucciones del lenguaje BASIC para programación. Esta parte era opcional. En los computadores compatibles IBM se requiere cargar el BASIC desde un disco. (Actualmente en desuso).

4- Las extensiones de la ROM, que son programas que se unen a los de la memoria ROM principal cuando se agrega al computador cierto equipo opcional. Uno de estos es el archivo IBMBIO.COM o el IO.SYS que forma parte del sistema operativo DOS en el disco, y otros pueden estar en chips ROM opcionales, que se pueden enchufar en una o dos bases que para ello tienen algunas tarjetas madres (ó mother board).

 

Firmware: Se refiere a las instrucciones o datos grabados de manera permanente en una memoria ROM. Muchos dispositivos y tarjetas de expansión incluyen chips ROM con las rutinas necesarias para el manejo interno de cualquier interrupción de hardware que este genere y establecer una comunicación más eficiente con el BIOS del sistema. Se acostumbra recientemente utilizar memoria EEPROM para poder actualizar el firmware y mejorar las características de los dispositivos.




© 2001 Erick Taracena
http://members.fortunecity.com/cursoscr
E-mail: [email protected]

Sugerencias, comentarios y actualizaciones:
E-mail: [email protected]