Системное программное обеспечение персональных ЭВМ


Схема 1



Схема 1





Рисунок 1.1. Уровни программного доступа к средствам ПЭВМ

Перед выполнением в программе пользователя команды INT 21H программист должен занести в регистр AH некоторый код - номер той программы из состава DOS, которую требуется выпол- нить. Остальные регистры, как и при обращении к BIOS, используются для передачи параметров. Принято говорить о "функции DOS номер NN", имея в виду обращение к прерыванию 21 с кодом NN в регистре AH. Некоторые функции созданы разработчиками системы "для внутреннего использования": они вызываются из других функций и программ DOS, их описания отсутствуют в документации фирм IBM и Microsoft и, видимо, не предполагалось обращение к ним из программ пользователя.

Несмотря на это, в некоторых источниках можно найти описание ряда недокументированных функций DOS. Для некоторых задач обращение к недокументированной функции DOS является полезным, а возможно, и единственным путем решения, но следует всегда иметь в виду, что одинаковая работа одной и той же недокументированной функции в разных версиях DOS не гарантируется.

Существуют различия между наборами функций, доступными в разных версиях DOS. Как правило, новая версия наследует все возможности предшествовавшей и расширяется дополнительными возможностями. Наиболее значительным нам представляется скачок между версиями 2 и 3. И дело тут даже не столько в существенном расширении возможностей, а в изменении самого подхода разработчиков: начиная с версии 3.0 в создании системы стали использоваться методы, применявшиеся для больших вычислительных систем. Поэтому далее в нашем пособии там, где упоминаются "старые" и "новые" ("современные") версии DOS, имеются в виду версии до 3.0 и от 3.0 включительно.

Наконец, языки высокого уровня включают в себя процедуры и функции, обеспечивающие еще более высокий уровень интеграции. Как правило, эти процедуры/функции имеют содержательные имена и использующий их программист не обязан знать, через какой уровень эти процедуры/функции воздействуют на аппаратные средства. Средства языков должны быть предметом отдельного рассмотрения, которое в наши задачи не входит.

Идеальным, конечно, является использование на каждом уровне только средств ближайшего снизу уровня, но идеал редко осуществим полностью, поэтому, в частности, программа пользователя имеет доступ ко всем уровням. Хотя в соответствии с целями нашего пособия смешения обращений на разные уровни встречаются здесь почти повсеместно, в практической работе автор является убежденным приверженцем идеала и горячо рекомендует его своим читателям. При решении прикладных задач каждое обращение к более низкому уровню должно быть непременно оправдано либо функциональной необходимостью, либо существенным выигрышем в эффективности. Такой подход, во-первых, существенно упрощает программирование и дает лучшую защиту от программистских ошибок, а во-вторых, лучше обеспечивает независимость программного изделия от конфигурации аппаратных средств и от версии DOS.




- Начало -  - Назад -  - Вперед -