Что такое драйвер устройства?

Что такое драйвер устройства?

Это общий вопрос. Проще говоря, драйвер устройства — это часть программного обеспечения, которая позволяет вам использовать такое оборудование, как принтер или камера, с такой операционной системой, как Windows, macOS или Linux. Без этого обычно небольшого программного обеспечения операционная система не знает, как обращаться с устройством. Большинство современных операционных систем автоматически устанавливают устройство для устройства при его подключении, используя идентификатор, уникальный для этой модели устройства.

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

Драйверы виртуальных устройств:

Драйверы виртуальных устройств представляют собой особый вариант драйверов устройств. Они используются для эмуляции аппаратного устройства, особенно в средах виртуализации, например, когда программа DOS запускается на компьютере Microsoft Windows или когда гостевая операционная система запускается, например, на хосте Xen. Вместо того, чтобы разрешить гостевой операционной системе взаимодействовать с оборудованием, драйверы виртуальных устройств берут на себя противоположную роль и эмулируют часть оборудования, так что гостевая операционная система и ее драйверы, работающие внутри виртуальной машины, могут создать иллюзию доступа к реальному оборудованию. Попытки гостевой операционной системы получить доступ к оборудованию направляются драйверу виртуального устройства в хостовой операционной системе, например, в виде вызовов функций. Драйвер виртуального устройства также может отправлять в виртуальную машину моделируемые события уровня процессора, такие как прерывания.