|
Заголовок драйвера всегда должен
располагаться начиная с нулевого смещения в сегменте драйвера.
При загрузке драйвера MS-DOS считывает заголовок для того, чтобы
определить тип драйвера и точки входа в драйвер. В заголовке
драйвера содержится четыре типа сведений, критичных для использо-
вания драйвера системой : ПОЛЕ СВЯЗИ, СЛОВО АТРИБУТОВ, ВЕКТОРА
ТОЧЕК ВХОДА и ПОЛЕ ИМЕНИ/КОЛИЧЕСТВА.
Поле связи
Первые четыре байта заголовка драйвера это FAR указатель (сме-
щение:сегмент) на следующий драйвер в цепочке (списке) драйверов.
При создании драйвера эти байты устанавливаются равными FFFF:FFFF
(-1). При загрузке нового драйвера его адрес помещается в поле
связи предыдущего драйвера. Исключением являются файлы, содержа-
щие несколько драйверов одновременно. В этом случае первые два
байта поля связи должны содержать смещение заголовка следующего
драйвера.
Слово атрибутов
Следующее слово заголовка драйвера называется словом атрибу-
тов. Оно содержит ряд однобитовых полей, которые характеризуют
тип и возможности драйвера. На рис.6-4 показано расположение и
значение битов в слове атрибутов. Слово атрибутов для разных
драйверов может иметь, например, следующее значение :
Драйвер диска формата IBM - 0000H
Стандартный драйвер консоли - 8003H
Драйвер стандартного устройства (напр. PRN) - 8000H
БИТ15: CHR. Бит CHR должен быть сброшен в 0, если драйвер пред-
назначен для блоковых устройств, и должен быть установлен в 1,
если драйвер будет обслуживать символьное устройство (см.
|