ВУЗ:
Составители:
155
5.7 Заключительные замечания
В заключение дадим некоторые рекомендации, к которым стоит
прислушаться при написании и отладке драйверов.
• Для отладки и проверки драйверов всегда следует пользоваться
тестовым загрузочным диском. Это:
− изолирует проверку от стандартной рабочей среды
− предотвращает "зависание" ЭВМ при загрузке DOS
• Драйвер должен начинаться с 0, а не с 100h
• Драйвер должен быть COM-программой.
− в момент загрузки драйвера DOS еще не загрузила файл
COMMAND.COM, который занимается загрузкой ЕХЕ-программ в
память для преобразования ЕХЕ-программы, полученной после
работы TLINK, в СОМ-программу следует использовать утилиту
EXE2BIN
• Следует тщательно следить за структурой данных заголовка запроса
− многих ошибок можно избежать, используя понятие
структуры
данных (struc)
• В поле связи заголовка устройства должна быть -1 – DOS заменит
значение этого поля на соответствующее значение
− если в этом поле будет не -1, DOS поймет это как наличие второго
драйвера. Если на самом деле его нет, возможны неприятности.
• Следует тщательно устанавливать биты атрибутов в заголовке
устройства
− по значению
поля атрибутов DOS определяет тип устройства. При
неправильной установке битов атрибутов могут не отрабатываться
функции, имеющиеся в данном драйвере, а также возможны попытки
реагировать на функции, отсутствующие в драйвере.
• Основная процедура должна быть дальней (far)
− в противном случае возможны неприятности со стеком (со всеми
вытекающими из этого последствиями).
• Все переменные
должны адресоваться в сегменте кода (CS)
− по умолчанию транслятор ассемблера относит переменные к
сегменту данных (DS). Для отнесения переменных к сегменту кода
следует
o либо использовать префикс (cs:)
o либо определить значение DS:
push cs mov ax,cs
pop ds mov ds,ax
• Правильно ли содержимое регистров ES:BX при формировании слова
состояния
155
5.7 Заключительные замечания
В заключение дадим некоторые рекомендации, к которым стоит
прислушаться при написании и отладке драйверов.
• Для отладки и проверки драйверов всегда следует пользоваться
тестовым загрузочным диском. Это:
− изолирует проверку от стандартной рабочей среды
− предотвращает "зависание" ЭВМ при загрузке DOS
• Драйвер должен начинаться с 0, а не с 100h
• Драйвер должен быть COM-программой.
− в момент загрузки драйвера DOS еще не загрузила файл
COMMAND.COM, который занимается загрузкой ЕХЕ-программ в
память для преобразования ЕХЕ-программы, полученной после
работы TLINK, в СОМ-программу следует использовать утилиту
EXE2BIN
• Следует тщательно следить за структурой данных заголовка запроса
− многих ошибок можно избежать, используя понятие структуры
данных (struc)
• В поле связи заголовка устройства должна быть -1 – DOS заменит
значение этого поля на соответствующее значение
− если в этом поле будет не -1, DOS поймет это как наличие второго
драйвера. Если на самом деле его нет, возможны неприятности.
• Следует тщательно устанавливать биты атрибутов в заголовке
устройства
− по значению поля атрибутов DOS определяет тип устройства. При
неправильной установке битов атрибутов могут не отрабатываться
функции, имеющиеся в данном драйвере, а также возможны попытки
реагировать на функции, отсутствующие в драйвере.
• Основная процедура должна быть дальней (far)
− в противном случае возможны неприятности со стеком (со всеми
вытекающими из этого последствиями).
• Все переменные должны адресоваться в сегменте кода (CS)
− по умолчанию транслятор ассемблера относит переменные к
сегменту данных (DS). Для отнесения переменных к сегменту кода
следует
o либо использовать префикс (cs:)
o либо определить значение DS:
push cs mov ax,cs
pop ds mov ds,ax
• Правильно ли содержимое регистров ES:BX при формировании слова
состояния
Страницы
- « первая
- ‹ предыдущая
- …
- 153
- 154
- 155
- 156
- 157
- …
- следующая ›
- последняя »
