BIOS

System BIOSROM BIOS oPC BIOS, es un estándar de facto que define un firmware de interfaz. El nombre se originó en el Basic Input/Output System usado en el sistema operativo CP/M en 1975. El software BIOS es instalado dentro de la PC, y es el primer programa que se ejecuta cuando se enciende la computadora.

El propósito fundamental del BIOS es inicializar y probar el hardware del sistema y cargar un bootloader o un sistema operativo de un dispositivo dispositivo de almacenamiento de datos. EL BIOS adicionalmente provee una capa de abstracción para el hardware, p.e. consiste en una vía para los programas de aplicaciones y los sistemas operativos para interactuar con el teclado, el monitor y otros dispositivos de entrada/salida. Variaciones en el hardware del sistema quedan ocultos por el BIOS, ya que los programas usan servicios de BIOS en lugar de acceder directamente al hardware. Los sistemas operativos modernos ignoran la capa de abstracción provista por el BIOS y acceden al hardware directamente.

El BIOS de la IBM PC/XT original no tenía interface con el usuario interactiva. Lo mensajes de error eran mostrados en la pantalla, o codificados por medio de una serie de sonidos. Las opciones en la PC y el XT se establecían por medio de interruptores y jumpers en la placa madre y en las placas de los periféricos. Las modernas computadoras compatibles Wintel proveen una rutina de configuración, accesible al iniciar el sistema mediante una secuencia de teclas específica. El usuario puede configurar las opciones del sistema usando el teclado y el monitor.

El software del BIOS es almacenado en un circuito integrado de memoria ROM no-volátil en la placa madre. Está específicamente diseñado para trabajar con cada modelo de computadora en particular, interconectando con diversos dispositivos que componen el conjunto de chips complementarios del sistema. En computadores modernos, el BIOS está almacenado en una memoria flash, por lo que su contenido puede ser reescrito sin remover el circuito integrado de la placa madre. Esto permite que el BIOS sea fácil de actualizar para agregar nuevas características o corregir errores, pero puede hacer que la computadora sea vulnerable a los rootkit de BIOS.

El MS-DOS (PC DOS), el cual fue el sistema operativo de PC dominante desde principios de la década de 1980 hasta mediados de la década de 1990, dependía de los servicios del BIOS para las funciones de disco, teclado y visualización de textos. El MS Windows NTLinux y otros sistemas operativos de modo protegido en general no lo usan luego de cargarse.

La tecnología de BIOS está en un proceso de transición hacia el Unified Extensible Firmware Interface (UEFI) desde el año 2010.

 

 

Historia

El acrónimo BIOS (-Basic Input/Output System-) fue inventado por Gary Kildall el creador del sistema operativo CP/M en 1975, siendo el nombre de un archivo del sistema. Las máquinas con CP/M usualmente tenían una ROM muy simple que hacía que la unidad de disquete leyera datos desde su primera posición de memoria donde se encontraba la primera instrucción del archivo BIOS que se encargaba de configurar el sistema o programa BIOS.

El diseño del IBM PC (1981) incluyó todas las funcionalidades básicas de entrada y salida en memorias tipo ROM, uso que posteriormente se erigió como el estándar de factopara la industria. El BIOS del 5150 fue el único programa que la compañía IBM desarrolló para el equipo, siendo la única pieza de código sobre la que se tenían derechos exclusivos. Basándose en procesos de Ingeniería Inversa, se escribieron versiones que tenían idénticas funcionalidades a la BIOS IBM pero además incluyeron nuevos dispositivos como los discos duros y varias unidades de disquete manteniendo la retrocompatibilidad hasta el día de hoy.

Hasta 1990 el BIOS era almacenado en memorias ROM o EPROM, después comenzó a utilizarse memorias Flash que pueden ser actualizadas por el usuario sin necesidad de destapar la caja.

En la última década se ha desarrollado el firmware EFI como esquema de ROM que reemplazará a la BIOS legada que está limitada a ejecutarse en 16 bits cuando la mayoría de procesadores son capaces de funcionar a 64 bits.

 

Funcionamiento

Después de un reset o del encendido, el procesador ejecuta la instrucción que encuentra en el llamado vector de reset (16 bytes antes de la instrucción máxima direccionable en el caso de los procesadores x86), ahí se encuentra la primera línea de código del BIOS: es una instrucción de salto incondicional, que remite a una dirección más baja en la BIOS. En los PC más antiguos el procesador continuaba leyendo directamente en la memoria RAM las instrucciones (dado que esa memoria era de la misma velocidad de la RAM), ejecutando las rutinas POST para verificar el funcionamiento del sistema y posteriormente cargando un sistema operativo (de 16 bits) en la RAM, que compartiría funcionalidades de la BIOS.

De acuerdo a cada fabricante del BIOS, realizará procedimientos diferentes, pero en general se carga una copia del firmware hacia la memoria RAM, dado que esta última es más rápida. Desde allí se realiza la detección y la configuración de los diversos dispositivos que pueden contener un sistema operativo. Mientras se realiza el proceso de búsqueda de un SO, el programa del BIOS ofrece la opción de acceder a la RAM-CMOS del sistema donde el usuario puede configurar varias características del sistema, por ejemplo, el reloj de tiempo real. La información contenida en la RAM-CMOS es utilizada durante la ejecución del BIOS para configurar dispositivos como ventiladoresbuses y controladores.

Los controladores de hardware del BIOS están escritos en 16 bits siendo incompatibles con los SO de 32 y 64 bits, estos cargan sus propias versiones durante su arranque que reemplazan a los utilizados en las primeras etapas.

 

 

 

 


Contacto

Mantener la operatividad