|
|
|
|
Установка драйверов устройств
Как упоминалось ранее, во времена, предшествующие 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 Ваши собственные драйверы устройств.
|
|