El BIOS es responsable de poner el sistema en un estado en el que el sistema operativo se pueda cargar desde un dispositivo que se puede iniciar. En el PC original de IBM, el hardware era mucho más simple y el BIOS no tenía casi tantas características. Las computadoras de hoy tienen capas adicionales que deben funcionar antes de que otras capas sean accesibles.
Antes de que la CPU pueda acceder a la RAM, el hardware de la CPU y el hardware de la placa base deben inicializarse. Debido a que el hardware exacto varía entre los diseños de la placa base y las CPU compatibles, el BIOS debe tener información muy específica sobre cómo poner en funcionamiento el hardware.
Antes de poder acceder a dispositivos de hardware como los adaptadores de pantalla, se deben inicializar los buses PCI. El BIOS debe comunicarse con los dispositivos en los buses PCI para obtener información de ellos y asignarles recursos (como direcciones e interrupciones).
- ¿Por qué las computadoras Mac apestan para jugar?
- ¿Necesito una tarjeta de sonido en mi computadora?
- ¿Cómo puedes verificar qué tan rápido es tu computadora?
- ¿Qué puedo hacer si mi computadora se apaga al azar?
- Estoy planeando comprar Lenovo ideapad 510 80SV001PIH a 57k. ¿Es una buena compra? ¿Es bueno para los juegos y la programación?
Una vez que se hace lo básico, el BIOS tiene que saltar a través de los aros para determinar desde dónde cargar el sistema operativo. Con todas las opciones posibles de discos duros, tarjetas de memoria, ópticas y de red, tiene que determinar cuál de estos dispositivos existe y asegurarse de que estén listos para funcionar. Una vez que se enumeran los dispositivos que se pueden iniciar, el BIOS intenta cargar un sistema operativo de ellos uno por uno si se configura el orden hasta que encuentre uno que tenga sistema operativo para cargar.
Una vez que se carga el sistema operativo, el sistema operativo puede decidir si desea continuar utilizando el código del BIOS para hablar con algunos de los dispositivos o si puede cargar su propio código para hablar con el hardware. Esto tiene la ventaja de permitir que el sistema operativo utilice hardware a un nivel básico sin necesidad de un controlador. Cuando se carga un controlador, puede permitir que se utilicen funciones más avanzadas del hardware o corregir errores en el código del BIOS.
Como puede ver, el BIOS tiene mucho trabajo por hacer y algunos requieren conocimientos muy específicos del hardware.