Смекни!
smekni.com

Информатика и программное обеспечение ПЭВМ (стр. 40 из 48)

Программа дискового начального загрузчика проверяет наличие на диске копии операционной системы MS-DOS. Для этого считывается первый сектор корневого каталога и определяется, являются ли его первые два файла системными файлами IO.SYS и MSDOS.SYS (или IBMBIO.COM и IBMDOS.COM) (в указанном порядке). Если этих файлов там нет, то пользователю предлагается сменить диск и нажать на произвольную клавишу для новой попытки. Если оба системных файла найдены, то дисковый начальный загрузчик считывает их в память и передает управление на точку входа модуля IO.SYS. В некоторых реализациях дисковый начальный загрузчик считывает в память только файл IO.SYS, который, в свою очередь, загружает файл MSDOS.SYS.

Файл IO.SYS, загруженный с диска, обычно состоит из двух отдельных модулей. Первый из них BIOS содержит связанный набор резидентных драйверов таких устройств, как консоль, последовательный порт, печатающее устройство, блочно-ориентированное устройство и таймер, а также программу инициализации, выполняемую только при начальной загрузке системы.

Второй модуль SYSINIT, поддерживаемый системой Microsoft, компонуется в файл IO.SYS, как и BIOS, изготовителем компьютера.

Рис. 3.12. Алгоритм загрузки системы MS-DOS

SYSINIT вызывается с помощью программы инициализации BIOS. Модуль определяет величину непрерывной памяти, доступной системе, и затем располагается по ее старшим адресам. Далее модуль переносит ядро системы DOS MSDOS.SYS из области ее начальной загрузки в область окончательного расположения в памяти, перекрывая начальную программу SYSINIT в любую другую расширяемую программу инициализации, которая содержалась в файле IO.SYS.

Далее SYSINIT вызывает программу инициализации в модуле MSDOS.SYS. Ядро DOS инициализирует ее внутренние таблицы и рабочие области, устанавливает векторы прерываний по адресам с 2OH по 2FH и перебирает связанный список резидентных драйверов устройств, вызывая функцию инициализации для каждого из них.

Функции драйверов определяют состояние оборудования, выполняют всю необходимую инициализацию аппаратуры и устанавливают векторы для внешних аппаратных прерываний имеющихся драйверов.

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

Когда ядро DOS проинициализировано и все резидентные драйверы доступны, модуль SYSINIT может открыть файл CONFIG.SYS. Этот необязательный файл содержит различные команды, которые позволяют пользователю настраивать среду MS-DOS. Например, пользователь может задать дополнительные драйверы аппаратных устройств, число буферов диска, максимально возможное число одновременно открытых файлов и имя файла командного процессора (оболочки).

Если файл CONFIG.SYS найден, он загружается в память для выполнения. Драйверы, указанные в файле CONFIG.SYS, последовательно загружаются в память, активизируются с помощью вызовов соответствующих модулей инициализации и заносятся в связанные списки драйверов. Функции инициализации каждого из них сообщают модулю SYSINIT размер памяти, отведенной под соответствующий драйвер.

После загрузки всех устанавливаемых драйверов SYSINIT закрывает все дескрипторы файлов и открывает вновь консоль (CON), принтер (PRN) и последовательный порт (AUX) как устройство стандартных ввода и вывода, ошибки, печати и последовательного устройства. Это позволяет символьно-ориентированному драйверу, установленному пользователем, замещать резидентные драйверы BIOS стандартных устройств.

В конце своего выполнения модуль SYSINIT вызывает функцию EXEC для загрузки интерпретатора командной строки, или оболочки. Стандартной оболочкой является COMMAND.COM, однако с помощью файла CONGIG.SYS можно устанавливать и другие оболочки. После загрузки оболочка высвечивает на экране дисплея запрос и ждет от пользователя ввода команды. Теперь система MS-DOS готова для работы и модуль SYSINIT уже не требуется.

3.3.3 Файловая система MS-DOS

Файловая система MS-DOS – часть операционной системы, управляющая размещением и доступом к файлам и каталогам.

Каталог – справочник файлов с указанием месторасположения на диске – бывает текущим, в котором работа пользователя производится в текущее машинное время; пассивным, с которым в данный момент време­ни не имеется связи; родительским, имеющий подкаталог.

Подкаталог – каталог, который входит в другой каталог.

Доступ – процедура устанавливания связи с памятью и размещенными в ней файлами для записи и чтения.

Файл – логически связанная совокупность данных или программ, для размещения которой во внешней памяти выделяется именованная область.

С понятием файловой системы тесно связано понятие файловой структуры диска, под которой понимают, как размещаются на диске главный каталог, подкаталоги, файлы, операционная система, а также какие для них выделены объемы секторов, кластеров, дорожек.

При формировании файловой структуры диска операционная система MS-DOS работает по определенным правилам:

- файл или каталог могут быть зарезервированы с одним и тем же именем в различных каталогах, но в одном и том же каталоге только один раз;

- порядок следования имен файлов и подкаталогов в родительском каталоге произвольный;

- файл может быть разбит на несколько частей, для которых выделяются участки дискового пространства одинакового объема на разных дорожках и секторах.

3.3.3.1 Файлы

Файл служит учетной единицей информации в операционной системе. Любые действия с информацией в MS-DOS осуществляются над файлами: запись на диск, вывод на экран, ввод с клавиатуры, печать, считывание информации CD-ROM и пр.

На диске файл не требует для своего размещения непрерывного пространства, обычно он занимает свободные кластеры в разных частях диска. Сведения о номерах этих кластеров хранятся в FAT-таблице.

В файлах могут храниться разнообразные виды и формы представления информации: тексты, рисунки, чертежи, числа, программы, таблицы и т. п. Особенности конкретных файлов определяются их формами.

Под формами понимается элемент языка, в символическом виде описывающий представление информации в файле.

Текстовая информация хранится в файле в кодах ASCII, в так называемом текстовом формате. Содержимое текстовых файлов можно просмотреть на экране дисплея с помощью разных программных средств, в том числе и в MS-DOS.

Любой другой файл с нетекстовой информацией просмотреть теми же средствами, что и текстовый файл, не удается. При просмотре на экран будут выводиться абсолютно непонятные символы.

Для характеристики файла используются следующие параметры:

- полное имя файла;

- объем файла в байтах;

- дата создания файла;

- время создания файла;

- специальные атрибуты файла:

1) R (Read only) – только для чтения;

2) H (Hidden) – скрытый файл;

3) S (System) – системный файл;

4) A (Archive) – архивированный файл.

Вся эта информация хранится в корневом каталоге логической структуры диска.

3.3.3.2 Каталоги

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

Таким образом, любой каталог, содержащий каталоги нижнего уровня, может быть, с одной стороны, по отношению к ним родительским, а с другой – подчиненным по отношению к каталогу верхнего уровня. Если это не вызывает путаницы, употребляют термин "каталог", подразумевая или подкаталог, или родительский каталог в зависимости от контекста.

Каталоги на дисках организованы как системные файлы. Единственное исключение – корневой каталог, для которого отведено фиксированное место на диске. Доступ к каталогам можно получить, как к обыкновенному файлу.

Доступ к содержимому файла организован из главного каталога, через цепочку соподчиненных каталогов (подкаталогов) n-го уровня.

3.3.3.3 Путь и приглашение

Путь – цепочка соподчиненных каталогов, которую необходимо пройти по иерархической структуре к каталогу, где зарегистрирован искомый файл (рис. 3.13).

Корневой каталог:\ Родительский каталог:\ Подкаталог:\ Имя файла

Рис. 3.13. Структура пути

Из рисунка видно, что доступ к файлу осуществляется через каталог благодаря зарегистрированному в нем имени данного файла. Если каталог имеет иерархическую структуру, то доступ к файлу операционная система организует в зависимости от положения подкаталога, в котором зарегистрировано имя искомого файла.

Доступ к файлу можно организовать следующим образом:

– если имя файла зарегистрировано в текущем каталоге, то достаточно для доступа к файлу указать только его имя;

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

При задании пути имена каталогов записываются в порядке следования и отделяются друг от друга символом "\".

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