Un controlador de dispositivo (llamado normalmente controlador, o, en inglés, driver)
es un programa informático que permite al sistema operativo interactuar con un periférico,
haciendo una abstracción del hardware y proporcionando una interfaz -posiblemente
estandarizada- para usarlo. Se puede esquematizar como un manual de instrucciones
que le indica cómo debe controlar y comunicarse con un dispositivo en particular.
Por tanto, es una pieza esencial, sin la cual no se podría usar el hardware.
El sistema básico de entrada/salida Basic Input-Output System (BIOS) es un código
de interfaz que localiza y carga el sistema operativo en la RAM; es un software muy
básico instalado en la placa base que permite que ésta cumpla su cometido. Proporciona
la comunicación de bajo nivel, y el funcionamiento y configuración del hardware del
sistema que, como mínimo, maneja el teclado y proporciona salida básica (emitiendo
pitidos normalizados por el altavoz del ordenador si se producen fallos) durante
el arranque. El BIOS usualmente está escrito en lenguaje ensamblador. El primer término
BIOS apareció en el sistema operativo CP/M, y describe la parte de CP/M que se ejecutaba
durante el arranque y que iba unida directamente al hardware (las máquinas de CP/M
usualmente tenían un simple cargador arrancable en la ROM, y nada más). La mayoría
de las versiones de MS-DOS tienen un archivo llamado "IBMBIO.COM" o "IO.SYS" que
es análogo al CP/M BIOS.