Организация ввода-вывода. Часть 2. Драйверы для WINDOWS NT. Рощин А.В. - 82 стр.

UptoLike

Составители: 

82
2.8 Драйверы устройств
Драйверы устройств являются загружаемыми модулями режима ядра
(обычно это файлы с расширением .SYS). Драйверы образуют интерфейс
между диспетчером ввода-вывода и соответствующим оборудованием. Эти
драйверы выполняются в режиме ядра в одном из трех контекстов:
в контексте пользовательского потока, инициировавшего
функцию ввода-вывода,
в контексте системного потока
режима ядра,
как результат прерывания (то есть, не в контексте процесса или
потока, который был текущим на момент прерывания).
Ранее уже говорилось о том, что в Windows 2000 драйверы не
работают непосредственно с оборудованиемони вызывают функции
HAL. Драйверы обычно пишутся на С или на С++, поэтому при грамотном
использовании процедур
HAL они легко переносятся между
архитектурами, поддерживаемыми Windows 2000 на уровне исходного
кода. На уровне двоичных файлов они могут переноситься внутри
семейства с одинаковой архитектурой. В Windows 2000 имеется несколько
видов драйверов устройств [1].
Драйверы аппаратных устройств, управляющие (через HAL)
оборудованием. Они получают от физического устройства или из
сети данные ввода или записывают в данные
вывода. Такими
драйверами являются драйверы шин, интерфейсов, устройств
массовой памяти и т. д.
Драйверы файловой системыэто драйверы Windows 2000,
обрабатывающие запросы на файловый ввод-вывод и
транслирующие их в запросы ввода-вывода для конкретных
устройств,
     2.8 Драйверы устройств
     Драйверы устройств являются загружаемыми модулями режима ядра
(обычно это файлы с расширением .SYS). Драйверы образуют интерфейс
между диспетчером ввода-вывода и соответствующим оборудованием. Эти
драйверы выполняются в режиме ядра в одном из трех контекстов:
     − в    контексте   пользовательского      потока,    инициировавшего
        функцию ввода-вывода,
     − в контексте системного потока режима ядра,
     − как результат прерывания (то есть, не в контексте процесса или
        потока, который был текущим на момент прерывания).
     Ранее уже говорилось о том, что в Windows 2000 драйверы не
работают непосредственно с оборудованием – они вызывают функции
HAL. Драйверы обычно пишутся на С или на С++, поэтому при грамотном
использовании    процедур     HAL      они    легко   переносятся   между
архитектурами, поддерживаемыми         Windows 2000 на уровне исходного
кода. На уровне двоичных файлов они могут переноситься внутри
семейства с одинаковой архитектурой. В Windows 2000 имеется несколько
видов драйверов устройств [1].
     − Драйверы аппаратных устройств, управляющие (через HAL)
        оборудованием. Они получают от физического устройства или из
        сети данные ввода или записывают в данные вывода. Такими
        драйверами являются драйверы шин, интерфейсов, устройств
        массовой памяти и т. д.
     − Драйверы файловой системы – это драйверы Windows 2000,
        обрабатывающие       запросы     на    файловый    ввод-вывод   и
        транслирующие       их в запросы ввода-вывода для конкретных
        устройств,




                                    82