На главную
Подписка
Новости










Главная / MS-DOS / MS-DOS. РУКОВОДСТВО РАЗРАБОТЧИКА / Глава 6 / Установка драйверов устройств Сделать домашней страницей Добавить в избранное Написать писмо

НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Установка драйверов устройств

Как упоминалось ранее, во времена, предшествующие MS-DOS версии 2.0, установка драйвера устройства означала изменение BIOS. Начиная с версии 2.0 появилась возможность устанавливать и заменять драйверы в процессе начальной загрузки системы.


Процесс начальной загрузки MS-DOS начинается со сброса системы. Аппаратура Вашей системы устанавливается в состояние сброса при включении питания компьютера. Сразу после сброса процессор начинает выполнять команды, находящиеся в самом конце его адресного пространства. Для процессора 80386 это команды, находящиеся по шестнадцатиричному адресу FFFFFFF0, для процессора 80286 по адресу FFFFF0, для процессора 8086 по адресу FFFF0. В любом случае по этим адресам находится ПЗУ, содержащее начальный загрузчик, задача которого заключается в загрузке системной области диска в память. Интересно отметить, что возможности начального загрузчика постоянно росли. Первый персональный компьютер фирмы IBM (IBM PC) мог загружаться только с дисковода "A". Вместе с компьютером IBM PC XT появилась возможность загрузки с жесткого диска и, видимо, недалек тот час, когда появится возможность сетевой загрузки.


Системная область диска, загружаемая в память начальным загрузчиком, называется вторичным загрузчиком. В случае MS-DOS, работающей на IBM - совместимом компьютере, это самый первый сектор диска длиной 512 байт. Такой маленький размер объясняется тем фактом, что BIOS находится в ПЗУ. Вторичному загрузчику, в этом случае, для загрузки остальной части системы достаточно обратиться к BIOS, которая всегда находится в ПЗУ. В системах, не содержащих BIOS в ПЗУ, начальный загрузчик должен считывать с диска программу, способную обеспечить возможность вторичному загрузчику считать остальную часть системы. В таких системах начальный загрузчик должен считывать довольно большую часть диска.


Сама MS-DOS загружается только после того, как будет считан в память вторичный загрузчик. Именно по этой причине возможен запуск игр, не требующих для своей работы MS-DOS, или возможна загрузка других операционных систем. Собственно, тип загружаемой системы зависит от того, что именно считывается с загрузочного диска. При загрузке MS-DOS вторичный загрузчик предполагает наличие на диске корневого директория и, как минимум, двух системных файлов. В связи с тем, что эти файлы скрытые, они не отображаются при выводе содержимого корневого директория (однако, их можно увидеть при помощи таких утилит, как XTREE, Norton Utilities или SDIR). Функции этих файлов одинаковы у всех поставщиков, хотя имена могут различаться. Первый файл содержит ядро MS-DOS и обычно называется MSDOS.SYS или IBMDOS.COM на системах фирмы IBM. Другой файл содержит интерфейс между MS-DOS и подсистемой ввода-вывода и называется IO.SYS (Microsoft), IBMBIO.COM (IBM) или еще как-нибудь у других поставщиков. Вместе эти два файла составляют операционную систему MS-DOS. После того, как вторичный загрузчик находит и загружает эти файлы, начинается процесс инициализации MS-DOS. Заметим, что на IBM-совместимых системах вторичный загрузчик считывает только файл IBMBIO.COM, который, в свою очередь, загружает IBMDOS.COM.


Как только загружен интерфейсный файл (IO.SYS или его эквивалент), вторичный загрузчик передает управление процедуре инициализации, содержащейся в интерфейсном файле. Кроме этой процедуры интерфейсный файл содержит стандартные драйверы, которые будут использоваться при инициализации и работе MS-DOS.


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


В этой точке процедура инициализации проверяет наличие файла CONFIG.SYS. Если указанный файл отсутствует, то MS-DOS загружает стандартный интерпретатор команд и передает ему управление. Если же файл CONFIG.SYS найден, то выполняется еще один шаг инициализации. На этом этапе Вам предоставляется возможность подключить к MS-DOS Ваши собственные драйверы устройств.


НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Hosted by uCoz