Математика Курс лекций по информатике Машиностроительное черчение Решение задач по физике Теоретические основы электротехники Сопротивление материалов История искусства Ядерные реакторы
Сбои в персональных компьютерах Программа инициализации Управление файлами Программы низкоуровневого форматирования Загрузочные секторы разделов Корневой каталог Таблицы размещения  файлов (FAT) Потери дискового пространства

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

Кроме того, существуют некоторые задачи, для выполнения которых программы просто обязаны обращаться непосредственно к аппаратным средствам. Например, программы низкоуровневого форматирования должны без посредников взаимодействовать с контроллерами жестких дисков. Такие программы всегда являются строго специализированными и предназначенными для определенных моделей или типов контроллеров. Другим примером вспомогательных программ, ориентированных на системы определенного типа, являются менеджеры памяти, позволяющие преобразовывать расширенную память в дополнительную (в компьютерах, построенных на базе процессора 386). Эти программы непосредственно обращаются к процессору 386, используя некоторые его специфические возможности.

Еще одним фактом, не укладывающимся в приведенную выше упрощенную схему является то обстоятельство, что сама DOS может непосредственно обращаться к аппаратным средствам. В частности, файл IBMBIO.COM состоит по большей части из вспомогательных драйверов низкого уровня, предназначенных для подмены кодов системной BIOS. Пользователи, которым приходилось иметь дело как с компьютерами  самой фирмы IBM, так и с IBM-совместимыми системами, наверное, задавались  вопросом, почему IBM никогда выпускает модифицированных вариантов ПЗУ BIOS с исправленными ошибками, а фирмы, выпускающие совместимые компьютеры, делают это ; едва ли не каждые полгода. Причина проста: IBM вносит все изменения и исправления системной BIOS в свои версии DOS. В процессе загрузки IBM DOS  определяется тип компьютера, а из ПЗУ BIOS считывается его идентификационный код (ID). В результате, в зависимости от версии ПЗУ, в системе будет использоваться  тот или иной набор подпрограмм. Например, в IBM DOS имеется, по крайней мере,  четыре разных набора подпрограмм для управления накопителями на жестких дисках, но в каждой конкретной системе используется только один из них.

Я провел простой эксперимент. С одной и той же дискеты, на которой, помимо упоминавшихся системных файлов, были записаны только C0MMAND.COM и CHKDSK.COM, я загрузил два компьютера: один типа XT, а другой — AT, причем в каждом из них объем системной памяти равнялся 640 К. После загрузки DOS с помощью программы CHKDISK я выяснил, что объемы свободной памяти в разных системах оказались разными. Это свидетельствует о том, что DOS в компьютерах различных типов занимает разные объемы памяти, поскольку в нее загружаются (в зависимости от кодов ID ПЗУ) разные наборы подпрограмм. Одним словом, DOS, системная BIOS и аппаратные средства связаны между собой гораздо теснее, чем это могло бы показаться на первый взгляд.

Компоненты DOS

DOS состоит из двух основных компонентов: системы ввода/вывода (В/В или I/O — Input/Output) и оболочки или командного процессора. Система В/В состоит из набора программ, постоянно находящихся в памяти во время работы компьютера, которые загружаются первыми при запуске DOS. Она хранится на загрузочном диске в виде двух скрытых файлов. В IBM DOS они называются IBMBIO.COM и IBMDOS.COM, но в других версиях DOS они могут иметь другие имена. Например, в MS-DOS это файлы IO.SYS и MSDOS.SYS. Независимо от названия, их основное назначение во всех версиях DOS одинаково. Однако системная BIOS в каждом компьютере ищет системные файлы по именам, и часто бывает не в состоянии обнаружить их под другими названиями. Это одна из причин, по которой используемая вами ОЕМ-версия DOS должна соответствовать типу вашего компьютера. В Windows 95 оба упомянутых файла заменены на один — WINBOOT.SYS

Командный процессор или оболочка (пользовательский интерфейс) хранится в виде файла C0MMAND.COM, который также загружается в процессе обычного запуска DOS. Оболочка является той частью DOS, которая обеспечивает работу системы в режиме командной строки и возможность простейшего "общения" пользователя с компьютером.

В последующих разделах система В/В и командный процессор рассматриваются более подробно, что поможет вам, во-первых, разобраться в различных проблемах, возникающих "по вине" DOS, а, во-вторых, не. путать их с чисто аппаратными неисправностями. Мы поговорим также и о том, как DOS размещает файлы в дисковом пространстве.

Запись на диски и в файлы в персональных компьютерах