Un controlador de dispositivo o driver es un programa que permite al sistema operativo interactuar con un periférico haciendo una abstracción del hardware y proporcionando una interfaz estandarizada. Existen diferentes tipos de drivers para cada tipo de periférico, y un mismo dispositivo puede tener más de un driver que ofrece diferentes niveles de funcionalidad. Si un driver falla puede bloquear la computadora e incluso dañar el hardware, haciendo que la solución de errores sea complicada.