Ремонт, сервис, услуги » Информация » Драйверы устройств




Драйверы устройств

Автор: addministr от 21-05-2014, 23:26

Категория: Информация



В этой статье предоставляется краткий обзор типов драйверов и объясняется, как получить список драйверов, установленных и загруженных на вашей системе. Драйверы устройств являются загружаемыми модулями режима ядра (имена файлов которых обычно имеют расширение .sys), обеспечивающими интерфейс между диспетчером ввода-вывода и соответствующим оборудованием. Они запускаются в режиме ядра в одном их трех контекстов:

- в контексте пользовательского потока, инициировавшего функцию ввода-вывода;

- в контексте системного потока режима ядра;

- в результате прерывания (и поэтому вне контекста любого конкретного процесса или потока — какой бы процесс или поток ни был текущим при возникновении прерывания).

Драйверы устройств


Как утверждалось в предыдущих статьях, драйверы устройств в Windows не работают с оборудованием напрямую, а вызывают для получения интерфейса с оборудованием функции в HAL. Драйверы обычно пишутся на C (иногда на C++) и поэтому, при правильном использовании подпрограмм HAL могут переноситься в виде исходного кода между архитектурами центральных процессоров, поддерживаемых Windows, а в виде исполняемого файла могут переноситься внутри архитектурного семейства. Существует несколько типов драйверов устройств:

- Драйверы аппаратных устройств, управляющие (с помощью HAL) записью на физическое устройство или в сеть или чтением оттуда. Существует множество типов драйверов аппаратных устройств — драйверы шин, драйверы интерфейса с пользователем, драйверы запоминающих устройств большой емкости и т. д.

- Драйверы файловой системы, являющиеся драйверами Windows, которые принимают запросы на файловый ввод-вывод и транслируют их в запросы ввода-вывода, направляемые конкретному устройству.

- Драйверы фильтра файловой системы, обеспечивающие зеркалирование и шифрование дисков, перехваты ввода-вывода и некоторую дополнительную обработку перед передачей ввода-вывода на следующий уровень.

- Сетевые редиректоры и серверы, являющиеся драйверами файловой системы, передающими запросы ввода-вывода файловой системы машине, находящейся в сети, и получающими от нее аналогичные запросы.

- Драйверы протоколов, реализующие такие сетевые протоколы, как TCP/IP, NetBEUI и IPX/SPX.

- Драйверы потоковых фильтров ядра, собранные в цепочку для обработки сигналов потока данных, например, при записи или воспроизведении аудио- и видео потоков.

Поскольку единственным способом добавления к системе написанного пользователям кода режима ядра является установка драйвера устройства, некоторые программисты пишут драйверы устройств просто для получения способа доступа к внутренним функциям или структурам данных операционной системы, недоступным из пользовательского режима (но документированным и поддерживаемым в WDK). Например, многие утилиты из Sysinternals сочетают в себе приложение Windows GUI и драйвер устройства, используемый для сбора внутреннего состояния системы и вызова функций, доступных только в режиме ядра и недоступных из Windows API в режиме пользователя.



Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Архив | Связь с админом | Конфиденциальность

RSS канал новостей     Яндекс.Метрика