Шинные драйверы WDM
Управление электропитанием и Plug and Play осуществляется при помощи
шинных драйверов WDM, которые представляют собой стандартные драйверы
WDM. Обратите внимание, что в этом контексте любое устройство, начиная
с которого происходит перечисление других устройств, будет называться
шиной. Шинный драйвер отвечает на пакеты запроса ввода/вывода
(IRP) и может быть расширен за счет использования драйверов фильтров.
Шинный драйвер выполняет следующие задачи: П Перечисление (enumeration)
устройств на шине:
- Динамическое извещение операционной системы о событиях на шине
- Ответы на IRP от систем Plug and Play и управления электропитанием
- Мультиплексирование доступа к шине (для некоторых шин)
- Общее администрирование устройств на шине
В процессе перечисления драйвер шины идентифицирует устройства на своей
шине и создает для них объекты устройств. Метод, с помощью которого
драйвер идентифицирует устройства на шине, зависит от конкретной шины.
Шинный драйвер выполняет некоторые операции от имени устройств, находящихся
на его шине, но обычно не обрабатывает операции чтения и записи на устройства,
находящиеся на шине. (Эти операции обрабатываются функциональным драйвером.)
Драйвер шины выступает в роли функционального драйвера для своего контроллера,
адаптера, моста или другого устройства.
Microsoft поставляет шинные драйверы для большинства распространенных
шин, в том числе: PCI, Plug and Play ISA, SCSI, и USB. Прочие шинные
драйверы могут поставляться независимыми поставщиками ≈ IHV или
OEM. Шинный драйвер может быть реализован как пара драйвер/мини-драйвер.
В таких парах драйверов один из драйверов связан со вторым, а второй
представляет собой DLL.
Драйвер ACPI выполняет роль как шинного драйвера, так и функционального
драйвера. ACPI позволяет системе узнавать об устройствах, которые не
имеют стандартного метода перечисления (т. е. о наследуемых устройствах)
или о вновь определенных устройствах ACPI, перечисление которых должно
производиться ACPI (например, о встроенных контроллерах). ACPI устанавливает
драйверы фильтра верхнего уровня для устройств, функциональные возможности
которых выходят за пределы стандарта для их шины. Например, если шинный
драйвер PCI устанавливает графический контроллер с элементами управления
электропитанием, которые не поддерживаются шиной PCI, то устройство
может поддерживать дополнительные функциональные возможности, если драйвер
ACPI загрузит для него высокоуровневый драйвер фильтра.
вверх
Содержание:
вверх
|