Драйверы устройств являются частью ядра, в частности подсистемы ввода-вывода ядра.На самом низком уровне драйверы устройств взаимодействуют напрямую с периферийными устройствами или их контроллерами или каналами.Драйвер устройства отвечает за запуск операций ввода-вывода на устройстве и обработку завершения запроса ввода-вывода.Например, в файловых операциях типичными управляемыми устройствами являются дисковые и ленточные накопители.
Драйверы устройств могут быть разделены на логический и физический уровни.Логические слои обрабатывают данные для класса устройств, таких как порты Ethernet или дисководы.Физические уровни взаимодействуют с конкретными экземплярами устройства.
Например, последовательный порт должен обрабатывать стандартные протоколы связи, общие для всего оборудования последовательного порта.Это будет управляться логическим уровнем последовательного порта.Однако физический уровень должен обмениваться данными с конкретным чипом последовательного порта.Физический уровень адресует специфичные для чипа вариации.Обычно запросы ОС сначала идут на логический уровень.В свою очередь, логический уровень призывает физический уровень реализовывать запросы ОС в терминах, понятных аппаратному обеспечению.И наоборот, когда аппаратное устройство должно реагировать на ОС, оно использует физический уровень для связи с логическим уровнем.
Таким образом, для взаимодействия нового оборудования со стандартным вводом-выводом потребуется специальный драйвер логического устройства для периферийного устройства.-контроллер хост-системы.