INDICE ¿Qué es la BIOS? Fabricantes Aspecto hardware Aspecto

Anuncio
BASIC INPUT-OUTPUT
SYSTEM
BIOS
OMAR ACOSTA PADRÓN
INDICE
¿Qué es la BIOS?
Fabricantes
Aspecto hardware
Aspecto software
Interrupciones
Seguridad
Plug and Play BIOS
Actualizarla
Resumen, arranque de un ordenador
Visión de futuro
¿Qué es la BIOS?
La BIOS es un conjunto de herramientas software y hardware que
controlan todos los recursos hardware del sistema todo momento.
Evita al sistema operativo conocer el funcionamiento interno de cada
dispositivo estableciendo una interface entre el SO y el hardware.
También es la BIOS la encargada del correcto arranque del ordenador.
Fabricantes
Como podemos observar en el enlace siguiente, en el mercado de
la BIOS existen muchos fabricantes.
http://support.microsoft.com/kb/24390
9/es
En el plano de los ordenadores los principales son:
Phoenix
American Megatrends (AMI BIOS)
Award BIOS
Microid Research
Existen otras muchas empresas fabricantes de dispositivos como
pueden ser móviles que fabrican para sus productos su propia BIOS sin
necesidad de contratar a una empresa.
Diversos fabricantes hacen BIOS con diferentes configuraciones y
prestaciones pero con el mismo objetivos principales.
Aspecto hardware
La BIOS esta implementada principalmente en la placa base del
ordenador donde residen la ROM BIOS y el CMOS CHIP.
Otros dispositivos como tarjetas de video poseen un chip donde
almacenan su propia información, la cual en el arranque del
ordenador se añade a la ROM BIOS.
ROM BIOS
Dibujo 1: BIOS PHOENIX
Dibujo 2: AMI BIOS
En la ROM BIOS se está la parte software principal de la BIOS.
POST, SETUP, BOOTSTRAP LOADER y los DRIVERS.
Read Only Memory (ROM) es el tipo de memoria utilizada para la
BIOS por que tiene la característica de no ser volátil, por lo cual la
información que posee no se pierde una ves apagado el
ordenador.
En la actualidad se usa una EEPROM Flash ROM la cual pueden ser
modificada por el usuario mediante un programa y no como hace
unos años cuando se utilizaba EEPROM, la cual tenia que ser
retirada de la placa base para ser modificada.
CMOS CHIP
Dibujo 3: CMOS CHIP
En la CMOS CHIP, la BIOS guarda la fecha y hora del sistema ademas
de las configuraciones que el usuario ha hechos sobre esta.
Complementary Metal-Oxide Semiconductor es la tecnología que usan
los CMOS CHIP. Estos están mal considerados como no volátiles
pero si que consumen energía pero muy poca, tanto que solo
precisa de 1 micro amperio para arrancar. Esta alimentada gracias
a una pila, la cual si es quitada o si se gastara perderíamos los
datos. Es tan escaso el consumo del chip que la pila dura
bastantes años.
Aspecto software
La parte software de la BIOS está compuesta por tres programas y el
sistema de controladores o drivers del sistema.
POST, Power On Self Test
Se ejecuta una vez se pone en marcha el ordenado y está encargado
de testar todos los elementos del sistema por si hay errores con
algún dispositivo o si algún dispositivo necesario para el arranque
del PC no está conectado.
Si el POSt encuentra algún error avisa al usuario mediante un código
sonoro, el cual no está estandarizado.
Ejemplo.
Dibujo 4: Ejemplo: códigos sonoros del POST
SETUP
Es un programa que puede ejecutar el usuario mientras se ejecuta el
POST pulsando una tecla o combinación de teclas, las cuales
varían dependiendo del fabricante, por ejemplo:
AMI BIOS, presionar suprimir.
Phoenix BIOS, presionar F2.
Award BIOS. Delete o control Ctrl+Alt+Esc.
Microid Research, presionar Esc.
Dibujo 5: Ejemplos de SETUP
Dependiendo de los fabricantes de BIOS podemos encontrarnos una
gran variedad de SETUP ofreciendo más o menos
configuraciones, pero hay algunas que siembre podremos
encontrar pues son imprescindibles.
Main: es un menú donde podremos encontrar la información
relevante al sistema. Versión de la BIOS, velocidad de microprocesador,
tamaño de cache, hora y fecha, y otros.
BOOT: nos permite decirle al sistema desde donde queremos
hacer el boot al sistema, ya se desde un CD, un disco duro, un pendrive
entre otros.
Advanced: este menú varia bastante en posibilidad de configurar
con otras BIOS, aquí podemos modificar el tipo de disco, ya sea SATA o
IDE, aumentar la velocidad del micro entre otras.
Security: permite proteger las configuraciones del SETUP con una
contraseña, ademas algunas BIOS permiten proteger un disco duro
también con contraseña.
BOOTSTRAP LOADER
Este programa se encarga de cargar el sistema operativo en la
memoria RAM y cederle el control. Para ello utiliza una rutina como la
que aparece en el siguiente enlace:
http://www.omninerd.c
om/articles/PC_Bootst
rap_Loader_Program
ming_Tutorial_in_ASM
DRIVERS o CONTROLADORES
También conocidos como Firmware son el código fuente de más bajo
nivel. Se encarga de manejar el funcionamiento interno de los
dispositivos estableciendo una interface con el SO y permitiendo el
manejo del dispositivo sin necesidad de conocer su estructura interna.
Son creados por el fabricante del dispositivo, por lo cual existen tantos
tipos de controladores como tipos de dispositivos.
Dibujo 6: Interface con la BIOS
Para dispositivos de fácil manejo como puede ser el teclado, el SO y
las aplicaciones no necesitan valerse de ningún tipo de
información para manejarlo pues su funcionamiento está
estandarizado, por lo cual no demandan información a la BIOS
sino que usan comandos del DOS, no así para los dispositivos con
una estructura interna difícil de comprender y utilizar, por lo cual
para un programador que solicite algún recurso de uno de estos
dispositivos le es siempre menos costoso valerse de las rutinas
que ofrecen los controladores.
Interrupciones
La demanda tanto de un usuario como del sistema operativo y
aplicaciones de algún recurso hardware es hecha a través de la
BIOS, la cual controla todo el sistema hardware.
Para gestionar la interrupciones la BIOS utiliza una tabla de vectores
de interrupción (IDT) y unos programas que atienden a las
interrupciones (ISR´s).
Son cuatro los servicios de la BIOS:
Servicios a periféricos.
Servicios de estado del equipo.
Servicios de hora.
Servicios adicionales.
Cada cual atiende a un tipo de interrupciones., por ejemplo.
Una interrupción que imprima por pantalla una ristra de caracteres.
Esta interrupción es atendida por la rutina de servicios a
periféricos, la cual identifica el tipo de recurso que demanda, en
este caso una pantalla y en con ayuda de la interface que ofrecen
los controladores muestra en la pantalla los pixeles adecuados.
Nótese que el usuario no es el encargado de dar color al pixel
directamente, sino que este ejecuta un instrucción para que sea
pintado, quien realmente le da el color físicamente es el
controlador del dispositivo hardware, siendo el único capás de
manejar los elementos físicos.
Seguridad
En relación a la seguridad de la BIOS, existen medidas preventivas
para proteger la BIOS en el caso de ser dañada, y maneras de
recuperarla si esta está dañada.
Si se daña el CMOS CHIP, no físicamente, por ejemplo por algún
conflicto entre dispositivos, podemos optar por borrar lo contenido
en el chip, de esta manera restableceríamos las configuraciones
predeterminadas. Existen dos maneras de hacerlo:
Quitar y poner la pila, con lo cual dejamos al chip sin alimentación
y por ser una memoria volátil, los datos se borran.
Otra manera es utilizando los pines, los cuales nos permiten borrar
la memoria sin tener que quitar la pila, evitándonos los problemas
que ello conlleva.
Dibujo 8: Estado inicial
Dibujo 7: Estado inicial
Quitar la pieza amarilla, la cual hace
cortocircuito entre el pin de la izquierda y
Dibujo 9: Quitar pin
derecha.
Dibujo 10: Cambiar de
posición para borrar
Cambiar de posición para borrar el chip, y al
terminar dejar como estaba.
Si se daña la CMOS RAM, por ejemplo con una actualización mal hecha
podemos intentar recuperarla sin tener que cambiar la placa base del
ordenador. Si tenemos una copia de la ROM BIOS, backup, y no ha
quedado dañada toda la comunicación con el PC podemos intentar
rescatarla, reescribiendo la memoria de la BIOS.
Si tenemos una placa con varias BIOS existen métodos efectivos para
recuperarla ya que esta segunda BIOS esta desarrollada para ese fin.
Dibujo 11: Placa base con dos BIOS
Plug and Play BIOS
Inventado por Intel-Microsoft el 28 de Mayo de 1993.
Se unieron varias empresas para obtener un estándar y en 1 de noviembre
de 1993 sale la primera versión.
La idea principal de plug-and-play (PnP) es que el sistema se haga
responsable de la configuración del hardware y software, que se está
agregando. Su objetivo, crear PC´s sin jumpers.
Con lo cual permite la expansión del ordenador y solucionar los posibles
problemas de configuración de los dispositivos.
El sistema chequea los recursos que cada dispositivo de expansión
necesita, coordina las asignaciones para evitar conflictos y le dice al
sistema y software las elecciones que ha hecho.
Actualizarla
Existen muchas razones por la que actualizar la BIOS, por ejemplo:
Añadir soporte para nuevos y más rápidos procesadores.
Soportar boot para USB, DVD, ZIP,...
Mejoras del POST (tiempo).
Soporte para Serial ATA, Ultra DMA.
Corrección de calendario.
Existen muchas más razones por la cuales ha sido necesario en su
momento actualizar la BIOS, muchas ellas relacionadas con las nuevas
prestaciones que se han ido incluyendo al ordenador, muchas otras
con las mejoras hechas sobre las rutinas y programas que componen la
BIOS. Por lo cual la actualización de la BIOS no es solo necesaria si
queremos añadir nuevos soportes, sino también si queremos mejorar el
funcionamiento de los que tenemos.
Antes de actualizar es conveniente estar seguros de la marca y modelo de
la BIOS que queremos actualizar ademas de la versión, y disponer de
ella con antelación.
Es aconsejado hacer una copia respaldo de la BIOS antes de actualizar.
Los datos en la ROM BIOS son guardados en dos segmentos de 64KB.
La copia respaldo consiste en copiar los datos de la posición C0000Cffff
y D0000DFFFF.
Para ello usamos la el comando DEBUG en el DOS.
Dibujo 12: Rutina para hacer copia de la ROM BIOS
Existen tres maneras de hacer una copia respaldo del CMOS CHIP.
Recordamos que en el CMOS CHIP está la fecha y hora ademas de las
configuraciones personales de nuestra BIOS.
Guardar una copia del CMOS CHIP consiste en saber que
configuraciones predeterminadas hemos modificado en el SETUP, por
ello, haciendo uso de papel y lápiz podemos conservar esa información.
Otra manera es imprimiendo la pantalla que observamos en el SETUP
con la tecla PrtScr, o también guardando en la memoria del PC esa
información haciendo copia del CMOS CHIP, de manera similar a la
ROM BIOS.
Una ves tomadas la medidas oportunas recordar que un fallo durante el
proceso de actualización puede dañar la BIOS. Por ello es aconsejado
hacerlo sobe un SO estable y en su caso con la batería cargada.
Existen varias manera de actualizar la BIOS, todas ellas se fundamentan en
lo mismo, reemplazar en la memoria ROM de la BIOS los datos por
otros que consideramos más novedosos. Para ello no servimos en el
caso de Windows de un comando del DOS, DEBUG, el cual no permite
acceder al la memoria de la BIOS, y con los parámetros adecuados
reemplazar los datos. Otra manera adoptada es crear un .bat que
ejecute automáticamente las instrucciones. También y más novedoso
es utilizar un .exe proporcionado por el fabricante que permite ademas
de actualizar, poder hacer copia respaldo entre otras opciones.
Resumen, arranque de un ordenador.
- Alimentación del sistema.
- Se busca el programa de arranque en la posición FFFF0h de la
ROM BIOS.
- Ejecución del POST.
- Búsqueda de la tarjeta de video y luego de otros dispositivos
(discos duros,...).
- Mostrar por pantalla el arranque.
- La BIOS realiza test adicionales del sistema, incluido el conteo
de memoria.
- Se realiza un inventario del PC determinando el tipo de hardware y
etiquetar los dispositivos lógicos(COM y LTP).
- Se ejecuta el PnP mostrando todos los dispositivos en pantalla.
- Se lanza el BOOTSTRAP LOADER.
- El SO se esta arrancando.
Visión de futuro
Desde hace más de veinte años los la BIOS posee una aspecto y
funciones similares a la actualidad, razón por la que existen actualmente
varios proyectos para mejorar las prestaciones de la BIOS.
EFI (Extensible Firmware Interface) es un proyecto de Intel cuya
intención es crear un mini sistema operativo en cual posea un entorno
gráfico y entre otras una mayor seguridad, flexibilidad y rapidez.
El proyecto LinuxBIOS y lleva en marcha desde el 99. Pretende
reemplazar las BIOS comerciales tal como las conocemos hoy por una
básica y libre con las rutinas mínimas para iniciar el hardware y cargar un
sistema operativo.
Descargar