{img1} |
asplinux confpoint |
|
В нор-
мальной ситуации адрес завершения представляет собой адрес (сег-
мент и смещение) первого свободного после драйвера байта памяти.
MS-DOS продолжает загрузку системы начиная со следующего после
адреса завершения параграфа памяти (или начиная с адреса заверше-
ния, если он приходится на границу параграфа).
Третий параметр, определяемый командой INIT - это адрес табли-
цы BPB. Этот указатель, возвращаемый MS-DOS командой INIT, предс-
тавляет собой адрес таблицы, которая сама представляет собой со-
вокупность указателей на блоки параметров BIOS. |
asplinux 11 |
|
|
Таблица BPB
содержит по одному указателю на каждое устройство, поддерживаемое
драйвером. Блок параметров BIOS (или, короче, BPB) это структура,
которая определяет формат блокового устройства (см. |
операционная система windows |
|
|
рис.6-6). Так
как этот параметр имеет смысл только для блоковых устройств, он
не возвращается символьными драйверами. |
Навигационные системы |
|
|
архиватор winrar, nod32, антивирус panda, symantec antivirus, англо русский словарь, .
panda activescan
|
драйверы ¦
¦ +02 : 00 Команда L---- ¦
¦ -------------------------------- ¦
¦ +03 : Статус ¦
¦ -------------------------------- ЧТЕНИЕ ЗАПИСЬ ¦
¦ Зарезервировано ¦
¦ ----------------------------------------- ----¬ ----- ----¬ --- ¦
¦ +13 : Количество устройств ¦ ¦ ¦ X ¦ ¦
¦ ----------------------------------------- +---+ ----- +---+ --- ¦
¦ +14 : Адрес конца ¦ ¦ ¦ X ¦ ¦
¦ ----------------------------------------- +---+ ----- +---+ --- ¦
¦ +18 : Команда/Адрес BPB ¦ X ¦ ¦ X ¦ ¦
¦ ----------------------------------------- +---+ ----- +---+ --- ¦
¦ +22 : Номер устройства ¦ X ¦ ¦ ¦ ¦
¦ ----------------------------------------- L---- ----- L---- --- ¦
¦ ¦
¦ Адрес таблицы BPB возвращается только блоковыми драйверами. ¦
¦ Номер устройства поддерживается начиная с DOS 3.10. ¦
¦ ¦
L==================================================================-
Команда INIT (инициализация) всегда является самой первой вы-
зываемой командой и обрабатывается на этапе установки драйвера.
- 6-30 -
MS-DOS выдает эту команду для каждого драйвера только один раз.
На команду INIT возложена ответственность за информирование
MS-DOS об особых характеристиках драйвера и за выполнение необхо-
димых действий по инициализации драйвера. Последние зависят от
типа устройства, управляемого драйвером. Возвращаемые драйвером
характеристики также зависят от типа драйвера.
Все драйверы должны возвращать адрес последнего байта памяти,
занимаемой драйвером и количество устройств, управляемых драйве-
ром. Драйверы символьных устройств могут поддерживать не более
одного устройства. Блоковые драйверы могут поддерживать несколько
устройств (например, если в одном устройстве содержится несколько
дисководов). Кроме того, драйвер может вернуть ноль в качестве
параметра количества поддерживаемых устройств, для прекращения
процесса инициализации. Это может потребоваться, к примеру, при
обнаружении отсутствия устройства. В такой ситуации драйвер дол-
жен также установить адрес последнего используемого байта равным
CS:0 (текущий кодовый сегмент, нулевое смещение) для того, чтобы
MS-DOS могла использовать всю занимаемую драйвером память.
|
|
|