Драйверы для низкоуровневых и высокоуровневых устройств отличаются по своему назначению и структуре. 1
Драйверы для низкоуровневых устройств обеспечивают прямое взаимодействие с аппаратурой, содержат блок прерываний и выполняют операции с устройством. 1 Например, низкоуровневый драйвер фильтра класса для мыши может обеспечивать ускорение её работы, выполняя нелинейное преобразование данных о перемещении мыши. 5
Драйверы для высокоуровневых устройств лежат между драйверами аппаратуры и остальной частью операционной системы. 1 Они не содержат блока прерываний, принимают заявки от системы, преобразуют данные и затем вызывают низкоуровневый драйвер для работы с устройством. 1 Например, высокоуровневый графический драйвер может преобразовывать команды рисования фигур, заливок, текста в набор команд конкретной модели принтера, а связанный с ним драйвер параллельного порта отвечает за передачу этих команд принтеру. 1