это компьютерная программа, которая реализует механизм управления устройством и позволяет программам более высокого уровня взаимодействовать с конкретным устройством, не зная его команд и других параметров функционирования. Драйвер осуществляет свои функции посредством команд контроллера устройства и обработки прерываний, приходящих от него. Как правило, драйвер реализуется как часть ядра ОС, так как:
Операционная система с помощью прерываний по таймеру организует опрос устройств – периодический анализ состояния каждого внешнего устройства. В процессе работы в состоянии устройств могли произойти изменения, например, пользователь установил флэшку в USB-порт, включил или выключил принтер и т.д. При опросе устройств ОС определяет состояние каждого устройства, которое может быть следующим:
При выполнении ввода-вывода аппаратура организует цикл busy-wait ожидания ввода-вывода с устройством: если устройство занято, процесс ждет его освобождения.