На главную
Подписка
Новости










Главная / MS-DOS / MS-DOS. РУКОВОДСТВО РАЗРАБОТЧИКА / Глава 6 / Команды драйверов устройств Сделать домашней страницей Добавить в избранное Написать писмо

НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Команды драйверов устройств

Заголовок запроса, как правило, содержит не всю информацию, которая требуется для большинства команд. Команд, которые не требуют дополнительной информации, довольно мало -- это команды INPUN/OUTPUT STATUS , FLUSH OUTPUT, OPEN/CLOSE DEVICE и REMOVABLE MEDIA. Все остальные команды требуют гораздо больше информации, чем содержится в заголовке запроса. Для каждой из этих команд к заголовку запроса добавляется дополнительная информация. Поле request.length заголовка запроса содержит при этом общий размер блока запроса (в байтах).


Для облегчения доступа к различным элементам блока запроса, опять-таки, могут быть использованы структуры. В листинге 6-10 (листинге драйвера RDISK, приведенного в конце главы) показано определение структур для тех команд, которые обрабатываются этим драйвером. Заметьте, что нам не нужно определять все поля в каждом блоке, т.к. различные запросы часто используют похожие блоки запросов. Это обстоятельство довольно удобно, т.к. MASM не позволяет использовать одно и тоже имя более одного раза, даже для различных структур.


НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Hosted by uCoz