INTRODUCCION Las computadoras domésticas a comienzos de los 80 venían con todo su sistema operativo en ROM. No había otra alternativa razonable ya que las unidades de disco eran generalmente opcionales. La actualización a una nueva versión significa usar un soldador o un grupo de interruptores DIP y reemplazar el viejo chip de ROM por uno nuevo. En la actualidad se el sistema operativo se encuentra en discos. Una razón de que todavía se utilice la memoria ROM para almacenar datos es la velocidad ya que los discos son más lentos. Aún más importante, no se puede leer un programa que es necesario para ejecutar un disco desde el propio disco. Por lo tanto, la BIOS, o el sistema de arranque oportuno de la computadora normalmente se encuentran en una memoria ROM.
MEMORIA ROM ROM son las siglas de read-only memory, que significa "memoria de sólo lectura": una memoria de semiconductor destinada a ser leída y no destructible, es decir, que no se puede escribir sobre ella y que conserva intacta la información almacenada, incluso en el caso de que se interrumpa la corriente (memoria no volátil). La ROM suele almacenar la configuración del sistema o el programa de arranque de la computadora, al cual se le llama BIOS
POST (Power-On Self Test, Test Automático de Encendido), un pequeño test que comprueba que todo esté conectado correctamente y que no haya ningún problema en los dispositivos. Si todo está correcto, dará paso a cargar el sistema operativo, en caso contrario, nos mostrará un mensaje de error o nos informará de algún fallo mediante una serie de pitidos o por voz si nuestra placa base incorpora esta funcionalidad.
BIOS BIOS significa Basic Input/oputput System, o lo que es lo mismo, Sistema Básico de Entrada y Salida. La BIOS es un programa informático (es decir, es software), Este programa es el que se encarga de comprobar el hardware instalado en el sistema, ejecutar un test inicial de arranque (POST), inicializar circuitos, manipular periféricos y dispositivos a bajo nivel y cargar el sistema de arranque que permite iniciar el sistema operativo. En resumen, es lo que permite que el ordenador arranque correctamente en primera instancia.
BIOS El programa de la BIOS tiene una característica importante que lo diferencia de los programas normales: no debe borrarse al apagar el ordenador. Por ello, se almacena en un chip de memoria del tipo ROM. Pero tampoco es una memoria ROM corriente, porque puede modificarse su contenido: las BIOS actuales son actualizables (mediante un programa especial) y se las suele llamar Flash-Bios (o Flash-ROM) que técnicamente están catalogadas como EEPROM (Electrically Erasable and Programmable Read-Only Memory).
CONFIGURACIÓN Inicialmente era muy complicado modificar la información del BIOS en el ROM, pero hoy en día la mayoría de los BIOS están almacenados en una memoria flash capaz de ser rescrita, esto es lo que permite que se pueda actualizar. El BIOS se apoya en otra memoria, llamada CMOS porque se construye con esa tecnología, en ella carga y almacena los valores que necesita y que son susceptibles de ser modificados (cantidad de memoria instalada, numero de discos duros, fecha y hora, etc.). A pesar de que apaguemos el ordenador, los valores de la memoria de BIOS se mantienen intactos, ¿cómo es posible?, pues gracias a una pila que la alimenta. Puesto que el consumo es muy bajo y se recarga al encender el ordenador, la pila puede durar varios años.
SETUP Se llama así al programa que nos permite acceder a los datos de la CMOS y que por eso también se suele denominar CMOS-SETUP. Este programa suele activarse al pulsar cierta/s tecla/s durante el arranque del ordenador. Usamos este programa para consultar y/o modificar la información de la CMOS (cuántos discos duros y de qué características; la fecha y hora, etc). Lógicamente, este programa SETUP está "archivado" (guardado) en alguna parte dentro del ordenador... y debe funcionar incluso cuando no hay disco duro o cuando todavía no se ha reconocido el disco duro: el SetUp está guardado dentro de la ROM-BIOS.
TIPOS DE BIOS Hay tres tipos de BIOS y su diferencia está en el método que se utiliza para grabarla: ROM: Sólo se puede grabar en el momento que se fabrica el chip. La información que contiene no se puede alterar. EPROM: Estos chips se pueden grabar con luz ultravioleta. En la parte superior del chip se puede apreciar una especie de ventanilla transparente, que suele estar tapada con una pegatina. Estas BIOS se encuentra principalmente en 286 y 386. Flash BIOS: Son los más utilizados en la actualidad. Estos chips se pueden grabar mediante impulsos eléctricos por lo que el propietario del ordenador la puede actualizar con un programa.
ACTUALIZACIÓN En los ordenadores más antiguos, los BIOS eran chips de memoria soldados a la placa madre y no era posible modificarlos. Algunos fabricantes aún podían ofrecer correcciones de software (denominadas parches) las cuales se almacenaban en el disco rígido y se cargaban en la memoria RAM (RAM) para corregir cualquier error. No obstante, solo podían actuar después de que la PC arrancara.
Luego, los fabricantes de BIOS comenzaron a vender BIOS conectados mediante un socket. Estos se podían cambiar físicamente, pero su precio era muy elevado en aquel momento.
Posteriormente, vino la memoria de solo lectura programable en forma eléctrica. Esta consistía en chips de memoria que podían modificarse al utilizar una máquina que enviaba pulsos eléctricos a través de conectores para uso especial. No obstante, este tipo de programador de chips era poco común, por lo que la operación era siempre relativamente costosa para el usuario.
ACTUALIZACIÓN La mayoría de las placas madre tienen memorias flash, que pueden modificarse directamente por medio de software. Los BIOS instalados en placas madre que tienen este tipo de memoria pueden mejorarse con un programa llamado firmware, que el fabricante provee. Este reemplaza al BIOS antiguo por uno más reciente. Sin embargo, el problema radicaba en la obtención de actualizaciones para el BIOS que tenía la máquina (problema que ahora se resolvió gracias a Internet). Estas actualizaciones están disponibles en la forma de archivos binarios que contienen una imagen del BIOS que se transfiere a la memoria flash mediante un firmware. Por consiguiente, la actualización del flash BIOS es la actualización del BIOS mediante un software, es decir, el reemplazo de la versión antigua del BIOS mediante el uso de un programa.
ACTUALIZACIÓN ¿Por qué debe actualizar su BIOS? Antes de actualizar su flash BIOS, debe estar seguro de que conoce los beneficios. De hecho, la actualización del flash permite que el BIOS se actualice por varias razones (corrección de errores, nuevas opciones, soporte para el nuevo hardware). Sin embargo, las mejoras que se brindan no afectan necesariamente a todos los usuarios. Además, no existe garantía de que incluso el BIOS nuevo no tenga nuevos errores... Entonces, ¿las mejoras que brinda la actualización del Flash BIOS (generalmente detalladas en un archivo que viene junto con el BIOS nuevo) justifican los riesgos que se corren (por más pequeños que fueren)? Si su sistema funciona correctamente y usted quiere actualizar su flash BIOS "solo para probar", con la esperanza de obtener supuestas mejoras, entonces, se recomienda no hacerlo.
FUNCIONES DEL BIOS El sistema BIOS de un PC estándar desempeña en realidad cuatro funciones independientes:
1) Proceso de carga inicial del software.
3) Programa de inventario y comprobación del hardware.
5) Inicialización de los dispositivos hardware que lo requieren; carga de cierto software básico, e inicio del Sistema Operativo.
7) Soporte para ciertos dispositivos hardware del sistema.
1) Proceso de carga inicial del software En los PCs y compatibles actuales, el proceso de carga de un sistema operativo, DOS, Windows, Linux o cualquier otro, se compone de una serie de pasos que se inician cuando se conecta o reinicia el ordenador. Una vez el PC arranca, comienza a ejecutarse el código que se encuentra en la dirección fija de memoria FFFF0h (F000:FFF0 en forma segmentada) el cual pertenece al ROM-BIOS y es el encargado de realizar una serie de tests e inicializaciones. Esta rutina se llama POST (Power On Self-Test). Una vez que la BIOS termina con sus tests e inicializaciones carga el primer sector (cilindro 0, cabeza 0, sector 1) en la dir. 0000:7C00 (7C00 lineal), comprueba que contenga código válido (comprueba que esté firmado con 55H, AAH en los bytes 511 y 512) y salta a esa dirección (CS:IP apuntan a esa dirección). Después de esta paso pasa al proceso de Bootstrap, que es el que arranca los sistemas operativos.
2) Programa de inventario y comprobación del hardware. Una vez iniciado el programa contenido en la BIOS, su primera tarea consiste en un proceso de comprobación del hardware, denominado POST (Power-On Self Test). El desarrollo exacto depende del fabricante, pero la secuencia de comprobaciones puede resumirse como sigue: •Chequeo de registros del procesador. •Setear el temporizador 8253/8254 para refresco de RAM. •Setear el acceso directo a memoria, DMA, para refresco de la RAM en el canal 0. •Verificar que el refresco es operativo (los primeros PC's usaban RAM dinámica). •Verificar la memoria RAM baja (0/16-64 KB). •Cargar los vectores de interrupción y asignarles espacio en la zona de memoria baja.
2) Programa de inventario y comprobación del hardware. •Inicializar los dispositivos de video y teclado. •Determinar el tamaño de la RAM adicional y comprobar su funcionamiento (el recuento que se ve en pantalla). Si llegado a este punto existiera algún error en la memoria se mostraría un mensaje de error (el dispositivo de video ya está operativo). •Inicializar los puertos COM (comunicaciones serie), LPT (comunicaciones paralelo) y de juegos •Inicializar, en su caso, el sistema de disquete. •Inicializar el sistema de disco. •Explorar el área de usuario de la ROM. •Llamar el interruptor de bootstrap.
3) Inicialización de los dispositivos hardware que lo requieren; carga de cierto software básico, e inicio del Sistema Operativo. Entre otras funciones, la inicialización incluye cargar en la memoria RAM ciertas tablas y programas muy básicos, imprescindibles para el manejo de muy bajo nivel del hardware. Por ejemplo, la carga en memoria baja de los vectores de interrupción, de forma que cuando ocurra una interrupción se sepa donde encontrar la rutina adecuada. Puesto que los programas contenidos en la BIOS requieren cierta área de trabajo donde almacenar variables y datos, se asignaron para este propósito 256 Bytes en la zona de memoria situada inmediatamente por encima de la tabla de vectores de interrupción; en las direcciones 400-4FFh (estas direcciones son frecuentemente señaladas como 0040:0000 - 0040:00FF).
3) Inicialización de los dispositivos hardware que lo requieren; carga de cierto software básico, e inicio del Sistema Operativo. Esta área de memoria es conocida como memoria de datos de la ROM-BIOS, y en ella se maneja información muy diversa. Por ejemplo, las últimas pulsaciones de teclas; capacidad de memoria encontrada; los ciclos de reloj pasados desde media noche (hora del sistema); el número de líneas y columnas que caben en la pantalla, o la lista de los dispositivos que han sido detectados en el sistema durante la fase de inventario del hardware. Entre las funciones de inicialización encomendadas a la secuencia POST se encuentra la inicialización de los datos en este área. Una vez terminadas las verificaciones previas, la BIOS inicia un recorrido en busca un dispositivo donde encontrar un programa que pueda continuar el proceso con la carga del Sistema Operativo. Este recorrido se denomina secuencia de carga ("Boot sequence") y su orden puede ser establecido mediante un programa auxiliar ( set-up de la BIOS) que es accesible mediante la pulsación de ciertas teclas durante los instantes iniciales de carga. Una vez fijada, la secuencia de carga es almacenada en la memoria de datos de la BIOS , de forma que puede ser recordada y utilizada la próxima vez que se reinicia el sistema.
4) Soporte para ciertos dispositivos hardware del sistema. Aparte de los procesos de verificación y carga descritos en páginas anteriores, la característica fundamental del BIOS, que además justifica su nombre de "Sistema Básico de Entrada Salida", es que en este firmware se encuentran las instrucciones necesarias para acceder a determinados servicios básicos del hardware (dispositivos de Entrada/Salida), entre los que se encuentran el teclado, la pantalla, los puertos serie y los controladores de disco. Estos trozos de código son accedidos a través de las direcciones contenidas en la tabla de vectores de interrupción. De forma que cualquier software que se cargue en el ordenador, puede saber en que dirección buscar para encontrar los servicios correspondientes. Cuando un programa necesita determinados recursos del hardware (lo que en último término viene a ser una entrada/salida), la BIOS representa una forma unificada de hacerlo; se pide a la BIOS el “servicio” de una forma estandarizada, de ahí el nombre: Sistema básico de Entradas/Salidas.
4) Soporte para ciertos dispositivos hardware del sistema. Aunque existen diversas versiones y fabricantes de la BIOS, su comportamiento externo está estandarizado. La BIOS es en realidad una caja negra, no importa como lo hace internamente. Lo importante es que al preguntarle de una forma estandarizada, produce el resultado deseado (aquí se llaman "Servicios"). Los servicios proporcionados por el BIOS pueden agruparse en cuatro grandes grupos: • Servicios a periféricos (incluyen video, disquete, teclado, puertos de comunicaciones, impresora y pantalla). • Servicios de estado del equipo (incluyen conocer los dispositivos presentes, incluyendo el tamaño de la memoria disponible). • Servicio de hora (posibilidad de leer y escribir el número de "ticks de reloj pasados desde media noche) • Servicios adicionales (permiten activar el BASIC y reiniciar el sistema)
RESETEO DE LA BIOS Cuando entramos al SETUP y nos pide una contraseña que no sabemos, será imposible hacer configuraciones. Pero hay una manera física de solucionar esto, a través de jumpers. Estos normalmente se localizan cerca de la BIOS. En dado caso hay que consultar el manual. Pero el procedimiento es retirarlo y reiniciar la maquina, la cual no arrancara correctamente, pero se reiniciara la BIOS al estado de fabrica. Despues hay que apagar nuevamente la maquina y regresar el jumper a su lugar. Con este procedimiento podremos entrar sin contraseña al SETUP
CONCLUSION Se dio un concepto amplio de lo que es la BIOS, para que sirve y sus partes. Se explico algo a fondo como se realizan sus pasos, dando un idea mas amplia de cómo funciona físicamente una computadora. Además de saber la importancia de este componente