Системное программное обеспечение. Рощин А.В. - 155 стр.

UptoLike

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

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 при формировании слова
  состояния