|
9.2. Характеристика MS DOS.
Организация доступа к файлуСтруктура каталогаНадеемся, что вы хорошо представляете себе организацию хранения книг в библиотеке и соответственно процедуру поиска нужной книги по ее шифру из каталога. Перенесите свое представление об этом на способ хранения файлов на диске и организацию к нему доступа. Доступ - процедура установления связи с памятью и размещенным в ней файлом для записи и чтения данных. Имя логического диска, стоящее перед именем файла в спецификации, указывает логический диск, на котором следует искать файл. На этом же диске организован каталог, в котором хранятся полные имена файлов, а также их характеристики: дата и время создания; объем (в байтах); специальные атрибуты. По аналогии с библиотечной системой организации каталогов полное имя файла, зарегистрированное в каталоге, будет служить шифром, по которому операционная система находит месторасположение файла на диске. Каталог - справочник файлов с указанием месторасположения на диске. Различают два состояния каталога - текущее (активное) и пассивное, MS DOS помнит текущий каталог на каждом логическом диске. Текущий (активный) каталог - каталог, в котором работа пользователя производится в текущее машинное время. Пассивный каталог - каталог, с которым в данный момент времени не имеется связи. В операционной системе MS DOS принята иерархическая структура (рис. 9.1) организации каталогов. На каждом диске всегда имеется единственный главный (корневой) каталог. Он находится на 0-м уровне иерархической структуры и обозначается символом "\". Корневой каталог создается при форматировании (инициализации, разметке) диска, имеет ограниченный размер и не может быть удален средствами DOS. В главный каталог могут входить другие каталоги и файлы, которые создаются командами операционной системы и могут быть удалены соответствующими командами.
Рис. 9.1. Иерархическая структура организации каталога Родительский каталог - каталог, имеющий подкаталоги. Подкаталог - каталог, который входит в другой каталог. Таким образом, любой каталог, содержащий каталоги нижнего уровня, может быть, с одной стороны, по отношению к ним родительским, а с другой стороны, подчиненным по отношению к каталогу верхнего уровня. Как правило, если это не вызывает путаницы, употребляют термин "каталог", подразумевая или подкаталог, или родительский каталог в зависимости от контекста. Каталоги на дисках организованы как системные файлы. Единственное исключение - корневой каталог, для которого отведено, фиксированное место на диске. Доступ к каталогам можно получить, как к обыкновенному файлу. Примечание. В структуре каталогов могут находиться каталоги, не содержащие ни одного файла или подкаталога. Такие подкаталоги называются пустыми. Правила наименования подкаталогов такие же, как и правила наименования файлов (см. 9.1). Для формального отличия от файлов обычно подкаталогам присваивают только имена, хотя можно добавить и тип по тем же правилам, что и для файлов. Доступ к содержимому файла организован из главного каталога, через цепочку соподчиненных каталогов (подкаталогов) n-го уровня. В каталоге любого уровня могут храниться записи как о файлах, так и о каталогах нижнего уровня. На рис. 9.2 приведена простейшая структура каталога, где в главном каталоге 0-го уровня хранятся только записи о файлах, каталогов нижнего уровня не существует. На рис. 9.3 приведена иерархическая структура каталога, где в каталогах любого уровня хранятся записи о файлах и каталогах нижнего уровня. Причем переход в каталог нижнего уровня может быть организован только последовательно через соподчиненные каталоги.
Нельзя перейти из главного каталога сразу в каталог, например 5-го уровня. Нужно обязательно пройти через все предыдущие каталоги высшего уровня. Описанный выше принцип организации доступа к файлу через каталог является основой файловой системы. Файловая система - часть операционной системы, управляющая размещением и доступом к файлам и каталогам на диске. С понятием файловой системы тесно связано понятие файловой структуры диска, под которой понимают, как размещаются на диске: главный каталог, подкаталоги, файлы, операционная система, а также какие для них выделены объемы секторов, кластеров, дорожек. Правила формирования файловой структуры диска.При формировании файловой структуры диска операционная система MS DOS соблюдает ряд правил:
Путь и приглашение Из рис. 9.1 - 9.3 видно, что доступ к файлу осуществляется через каталог благодаря зарегистрированному в нем имени данного файла. Если каталог имеет иерархическую структуру, то доступ к файлу операционная система организует в зависимости от положения подкаталога, в котором зарегистрировано имя искомого файла. Доступ к файлу можно организовать следующим образом:
Путь - цепочка соподчиненных каталогов, которую необходимо пройти по иерархической структуре к каталогу, где зарегистрирован искомый файл. При задании пути имена каталогов записываются в порядке следования и отделяются друг от друга символом \. Взаимодействие пользователя с операционной системой осуществляется с помощью командной строки, индицируемой на экране дисплея. В начале командной строки всегда имеется приглашение, которое заканчивается символом >. В приглашении может быть отображено: имя текущего диска, имя текущего каталога, текущее время и дата, путь, символы-разделители. Приглашение операционной системы - индикация на экране дисплея информации, означающей готовность операционной системы к вводу команд пользователя. Пример 9.8. Возможны три варианта организации пути доступа к файлу в зависимости от места его регистрации:
Пример 9.9. Пример 9.10. Пример 9.11. Внимание! Отличие примера 9.12 от примера 9.11 в следующем в примере 9.12 перед именем первого каталога ставится символ \ что определяет путь поиска файла от главного каталога вниз но указанной цепочке; в примере 9.11 перед первым именем каталога не ставится символ \, что задает путь поиска файла от текущего каталога вниз. Познакомившись с понятием пути, вернемся к введенному в 9.1 понятию спецификации файла. Существует сокращенная спецификация файла и полная спецификация файла, в образовании которой участвует путь. На рис. 9.4 показаны варианты правила образования спецификации файла.
Пример 9.12. Сокращенная форма спецификации файла C:\KIT.BAS Файл
с программой на Бейсике KIT.BAS находится в главном каталоге жесткого
диска. Структура записей в каталогеТеперь вам предстоит знакомство со структурой хранящихся в каталоге записей со сведениями о файлах и подкаталогах нижнего уровня. Запись о файле в каталоге содержит имя и тип файла, объем файла в бантах, дату создания, время создания и еще ряд параметров, необходимых операционной системе для организации доступа. Запись о подкаталоге нижнего уровня в родительском каталоге содержит его имя, признак <DIR>, дату и время создания. Рассмотрим возможные варианты содержимого каталога.
Рассмотренные выше три варианта представления каталогов отражают содержимое главного каталога. Структура каталогов, начиная с 1-го уровня и ниже, идентична и отличается от главного только тем, что перед записями о файлах и каталогах нижнего уровня помещаются две записи с многоточием (рис. 9.8). Точки, которые вы видите вначале, означают, что на экран вызвано содержимое
подкаталога (каталога 1-го уровня) KNIGA, который содержит два текстовых
файла SVET и TON. Модульная структура MS DOSМодули операционной системы MS DOSПонятие модуля широко используется применительно как к аппаратной, так
и к программнои части компьютера. Модуль - унифицированная самостоятельная функциональная часть системы, имеющая законченное оформление и средства сопряжения с другими функциональными узлами и модулями. Структуру операционной системы MS DOS образуют модули (рис. 9.9):
О системе прерыванийОсновным механизмом функционирования MS DOS является система прерываний. Прерывания - это процедуры, которые компьютер вызывает для выполнения определенной задачи. Существуют аппаратные, логические и программные прерывания. Аппаратные прерывания инициируются аппаратурой, например сигналом от принтера, нажатием клавиши на клавиатуре, сигналом от таймера и другими причинами. Логические прерывания возникают при нестандартных ситуациях в работе микропроцессора, например деление на нуль, переполнение регистров и др. Программные прерывания инициируются программами, т.е. появляются, когда одна программа хочет получить сервис со стороны другой программы, например доступ к определенным аппаратным средствам. Каждое прерывание имеет уникальный номер, и с ним связана определенная подпрограмма. Когда вызывается прерывание, процессор оставляет свою работу и выполняет прерывание. Затем загружается адрес программы обработки прерывания и ей передается управление. После окончания ее работы управление передается основной программе, которая была прервана. Аппаратные прерывания относятся к прерываниям низшего уровня, им присвоены младшие номера, и обслуживает их базовая система ввода-вывода. Логические и программные прерывания относят к верхнему уровню, они имеют большие номера, и их обслуживает в основном базовый модуль DOS. Функции и назначение базовой системы ввода-вывода BIOSБазовая система ввода-вывода BIOS -самый близкий к аппаратуре компонент DOS. BIOS находится в постоянной памяти, которая входит в комплект поставки персонального компьютера. Тип операционной системы может изменяться, a BIOS остается постоянным. Поэтому BIOS, являясь неизменяемой частью персонального компьютера, с одной стороны, может рассматриваться как компонент аппаратной части, а с другой стороны. как компонент любой операционной системы, в том числе и MS DOS. Строго говоря, IOS не входит в состав MS DOS, но, учитывая, что без этого модуля функционирование операционной системы невозможно, будем считать его компонентом ее структуры. Основная функция BIOS реализуется в процессе нормальной работы персонального компьютера. Это - управление стандартными внешними (периферийными) устройствами, входящими в состав комплекта персонального компьютера конкретной модели, а именно: дисплеем, клавиатурой, дисководами, принтером, таймером. Выделение BIOS в отдельный аппаратно-программный модуль позволяет обеспечить независимость программного обеспечения от специфики конкретной модели персонального компьютера. Вспомогательные функции BIOS реализуются при включении персонального компьютера на этапе загрузки и состоят в следующем:
BIOS содержит: специальные программы (драйверы) по управлению работой стандартными внешними устройствами; тестовые программы для контроля работоспособности аппаратуры; программу начальной загрузки операционной системы. Драйвер - программа, расширяющая возможности операционной системы. Драйвер устройства - программа операционной системы для управления работой периферийными устройствами: дисководами, дисплеем, клавиатурой, принтером, манипулятором "мышь" и пр. Драйвер устройства должен учитывать специфику работы внешнего устройства, все тонкости его функционирования. Поэтому каждому устройству должен соответствовать свой драйвер. Функции драйвера устройства состоят в следующем:
Пример 9.13. После нажатия клавиши на клавиатуре соответствующий драйвер выполняет обработку сигнала, проверяет, нажималась ли управляющая клавиша, управляет обработкой при смене регистров клавиатуры. Причем обращаем ваше внимание, что подобные операции являются стандартными для любой программы и никакого отношения к сути решаемой задачи не имеют. Драйверы выполняют только стандартные функции управления вводом-выводом. Драйверами также считаются программы, обеспечивающие управление расширенной памятью, а также создание и обслуживание виртуальных устройств, например электронного диска - имитации гибкого диска в оперативной памяти. Драйверы могут быть либо стандартными, либо загружаемыми. Стандартные (внутренние) драйверы -это программы, которые находятся внутри BIOS или его модуля расширения ЕМ BIOS и служат для управления внешними устройствами, входящими в стандартный комплект поставки персонального компьютера. Эти драйверы подключаются к системе автоматически после перехода компьютера в нормальное рабочее состояние. Загружаемые (внешние, устанавливаемые) драйверы - это программы, хранящиеся на диске и предназначенные для управления внешними устройствами, вторые отличаются от стандартных либо по своим техническим параметрам, либо особыми режимами эксплуатации- Загружаемые драйверы подключаются к системе только тогда, когда они указаны в файле конфигурации CONFIG.SYS. Возможность использования загружаемых драйверов облегчает адаптацию операционной системы к новым внешним устройствам. Постоянный модуль BIOS хранится в постоянной памяти и не может быть изменен при обычных условиях эксплуатации. Записывается он в постоянную память только при изготовлении персонального компьютера. Однако необходимость изменения содержимого BIOS вполне вероятна и может быть вызвана следующими причинами: подключением к персональному компьютеру новых внешних устройств и использованием нестандартного командного процессора и др. Функции и назначение модуля расширения базовой системы ввода-выводаМодуль расширения базовой системы ввода-вывода ЕМ BIOS придает гибкость операционной системе при обращении к внешним устройствам, а при необходимости и перекрывает (блокирует) функции постоянного модуля BIOS. Он хранится на диске в виде файла IO.SYS после главного каталога в заранее выделенном фиксированном месте. Объем этого файла небольшой, например, для MS DOS версии 6.22 он равен 40 Кбайт. Наличие модуля расширения позволяет легко провести модификацию параметров операционной системы, используя файл конфигурации CONFIG.SYS, который хранится в главном каталоге. При подключении новых внешних устройств в этом файле указываются имена новых драйверов, управляющих их работой. Сами драйверы в виде файлов размещаются на диске. После загрузки (переписи) операционной системы в оперативную память осуществляется поиск на диске файла CONFIG.SYS, где должны быть указаны необходимые драйверы. и модуль расширения осуществляет их подключение. Запомните! Подключая новое внешнее устройство, следует позаботиться о наличии соответствующего драйвера. Установка нового драйвера должна быть сделана в файле конфигурации CONFIG.SYS, о котором идет речь в 9.3. Основная функция модуля расширения в процессе нормальной работы компьютера - это увеличение возможностей BIOS. Функции модуля расширения на этапе загрузки состоят в следующем:
Функции и назначение базового модуля дисковой операционной системыБазовый модуль располагается в виде файла MSDOS.SYS на системном диске в специально выделенном для него месте вслед за файлом модуля расширения IO.SYS. Объем файла MSDOS.SYS для версии 6.22 - 38 Кбайт. Базовый модуль не имеет жесткой привязки к аппаратной части и при необходимости может быть заменен на другой файл. Основная функция базового модуля в прицеле нормальной работы компьютера - управление ресурсами компьютера, файловой системой на дисковом пространстве и управление работой программ при помощи системы прерываний. Функциями базового модуля на этапе загрузки являются: считывание в память и запуск командного процессора, инициализация векторов прерываний верхнего уровня. Пример 9.14. Программы, входящие в структуру базового модуля DOS, должны обеспечивать:
Функции и назначение командного процессораКомандный процессор, иногда называемый процессором консольных команд, предназначен для поддержки пользовательского интерфейса DOS. Он представляет собой обычный файл COMMAND.COM и располагается на системном диске в любом месте пространства, выделенного под файлы. Так, для MS DOS версии 6.22 объем COMMAND.COM равен 55 Кбайтам. Командный процессор состоит из двух модулей - резидентного и транзитного. Резидентный модуль хранится в оперативной памяти постоянно после загрузки операционной системы. Транзитный модуль может вытесняться из оперативной памяти на диск прикладной программой, если ей для работы не хватает памяти. После окончания работы такой программы транзитный модуль вновь восстанавливается на прежнем месте оперативной памяти путем считывания его с диска. Транзитный модуль содержит исполнитель внутренних команд и загрузчик программ в оперативную память для выполнения. Взаимодействие с командным процессором осуществляется при помощи команд. Под командой понимается указание на выполнение некоторого действия. Команды бывают двух типов: резидентные (внутренние) и транзитные (внешние). Резидентные команды входят в состав самого командного процессора. Транзитные команды являются файлами типа ЕХЕ или СОМ, входящими в состав операционной системы DOS и хранящимися в обычном каталоге, как правило, с именем DOS. Внимание! Прежде чем воспользоваться внешней командой, надо удостовериться в ее наличии на диске, а затем только ввести ее в командную строку. Основные функции командного процессора в процессе нормальной работы компьютера состоят в следующем:
Основная функция командного процессора на этапе загрузки - это выполнение файла автонастройки AUTOEXEC.BAT. При нормальном функционировании операционной системы командный процессор выдает на экран приглашение к работе, например С:\. В ответ на это приглашение вы вводите имя программы или команды, а командный процессор расшифровывает символы введенного имени и продолжает работу по одному из следующих вариантов:
После окончания работы введенной команды (программы) управление вновь возвращается командному процессору. Назначение загрузчикаЗагрузчик BOOT RECORD (модуль начальной загрузки) всегда размещается на диске в нулевом секторе и занимает объем 512 байт. Основное назначение этой небольшой программы состоит в поиске и перезаписи (загрузке) с диска в оперативную память двух файлов - IO.SYS и MSDOS.SYS. Поиск этих модулей и их загрузка в оперативную память осуществляются в определенном порядке, поэтому на диске и в оперативной памяти они занимают фиксированное место и следуют один за другим. Если блок начальной загрузки не обнаружит этих модулей на диске, то он выдает соответствующее сообщение и работа компьютера приостанавливается. Кроме того, функцией загрузчика является запуск модуля расширения BIOS. Как различать утилиты, внешние команды и драйверыУтилиты, внешние команды н драйверы представляют собой программы, хранящиеся во многих случаях в каталоге системного диска в виде файлов типа .СОМ, .EXE, .SYS. Внешнее различие между ними весьма условное, и связывают его с интерфейсом взаимодействия с пользователем. Внешней командой принято считать программу, выдающую пользователю ряд простых запросов или выполняющуюся автоматически без специально организованного интерфейса с пользователем. MS DOS имеет определенный перечень внешних команд. Внешние драйверы, как правило, выполняются без диалога и поставляются отдельно от MS DOS либо совместно с внешним устройством, либо самостоятельно. Утилиты - обслуживающие программы, которые предоставляют пользователю сервисные услуги Они, как правило, имеют полноэкранный, организованный в виде меню интерфейс взаимодействия с пользователем. Реже интерфейс организован в виде запросов. РАЗМЕЩЕНИЕ MS DOS НА ДИСКЕ И В ОПЕРАТИВНОЙ ПАМЯТИРазмещение операционной системы на дискеОперационная система MS DOS постоянно хранится на жестком диске. Помимо этого должна существовать ее резервная копия на гибком диске, называемом системным. Системный диск - диск, где хранятся основные модули операционной системы и сервисные программы (команды), расширяющие ее возможности. На рис. 9.10 показана структура 3,5" системного диска, состоящего из 2847 секторов, где выделены:
На гибком диске 0-я и 1-я дорожки отведены для размещения модулей операционной системы и организации файловой структуры диска:
Внимание! Структура диска с прикладными программами (6ез операционной системы) полностью совпадает по 32-й сектор включительно со структурой системного диска (рис. 9.10). Начиная с 33-го сектора, располагается область пользователя, где хранятся прикладные программы. Роль FAT-таблицы размещения файловФайл размещается на диске по кластерам, которые пронумерованы. Эти кластеры могут находиться в разных местах диска, и соответственно файл будет храниться на диске в виде отдельных фрагментов в свободных на момент записи на диск кластерах. В этом случае говорят, что файл фрагментирован. Желательно, чтобы кластеры, выделенные для хранения файла, шли подряд, так как это позволяет сократить время его поиска. Однако это возможно сделать только с помощью специальной программы, и подобная процедура получила название дефрагментации файла. И в том, и в другом случае для организации доступа к файлу операционная система должна иметь сведения о номерах кластеров, где размещается каждый файл. В этом ей помогает FAT-таблица. FAT-таблица предназначена для размещения и поиска файлов на диске. Она хранится на диске в определенном месте (см. рис. 9.10). Учитывая ее крайне важную роль в организации файловой системы, предусмотрено хранение и ее дубля, т.е. на диске хранятся две одинаковые таблицы - основная и дублирующая. При повреждении основной таблицы можно восстановить информацию о размещении файлов с помощью дублирующей. Рассмотрим основную идею, заложенную в основу построения и использования FAT-таблицы, обратившись к рис. 9.11. Следует заметить, что для ускорения доступа к таблице производится ее предварительная загрузка в оперативную память. Количество ячеек FAT-таблицы определяется количеством кластеров на диске. Каждая ячейка содержит номер кластера.
В свою очередь, в каталоге хранятся записи о файлах, где наряду с другими характеристиками указан номер его первого кластера. При необходимости доступа к файлу сначала производится обращение к ячейке FAT-таблицы, адрес которой определяется первым номе ром, хранящимся в записи о файле. В этой ячейке хранится номер второго кластера этого файла. Обратившись к ячейке таблицы, соответствующей номеру второго кластера, операционная система найдет там номер третьего кластера и т.д- Так будет создана цепочка кластеров, где расположен файл. В последней клетке таблицы, завершающей данную цепочку, должен находиться код FFF или FFFF для указания ее конца. Так определяется цепочка кластеров, где хранится файл. Размещение операционной системы MS DOS в оперативной памятиРаспределение пространства оперативной памяти было показано в гл.4 на рис. 4.7, 4.8, где непосредственно адресуемая память определяется объемом 1024 Кбайт. Рассмотрим это пространство, обратившись к рис. 9.12 с позиций расположения в нем операционной системы. Приблизительно 110 Кбайт, начиная с младших адресов, займет основная часть ядра операционной системы. В области старших адресов расположится транзитная часть командного процессора, которая автоматически удаляется при нехватке памяти для прикладной программы. При объёме 640 Кбайт для прикладных программ приблизительно выделяется 530 Кбайт.
ЗАГРУЗКА MS DOS В ОПЕРАТИВНУЮ ПАМЯТЬ С ДИСКААлгоритм загрузки операционной системыОперационная система хранится во внешней памяти обычно на жестком диске, реже - на гибком. Для нормальной работы компьютера необходимо, чтобы основные модули операционной системы находились в оперативной памяти. Поэтому после включения компьютера организована автоматическая перезапись (загрузка) операционной системы с диска в оперативную память. Наиболее важные аспекты этой загрузки отражены в виде алгоритма на рис. 9.13. Загрузка операционной системы - перезапись операционной системы с диска (жесткого или гибкого) в оперативную память. После включения компьютера вы наблюдаете за сменой цифр на экране. Эти цифры отображают процесс тестирования оперативной памяти программой BIOS. При обнаружении неисправности в ячейках оперативной памяти будет выдано сообщение. После успешного окончания тестирования аппаратуры производится обращение к дисководу с гибким диском А, и рядом с ним загорается лампочка индикации. Если вы загружаете операционную систему с гибкого диска, то надо до или во время тестирования вставить системный диск в дисковод А. В противном случае при отсутствии на диске А операционной системы осуществляется обращение к жесткому диску, о чем свидетельствует засветившаяся рядом с ним лампочка индикации Начинается считывание в оперативную память 0-го сектора 0-й стороны диска, в котором находится загрузчик (BOOT RECORD). Управление передается загрузчику, который проверяет наличие на системном диске модуля расширения IO.SYS и базового модуля MSDOS.SYS. Если они находятся в отведенном для них месте (см. рис. 9.10), то он загружает их в оперативную память, в противном случае будет выдано сообщение об их отсутствии. В этом случае рекомендуется произвести повторную загрузку. Сигнал повторной загрузки передает управление постоянному модулю BIOS, который снова переписывает с диска в оперативную память блок начальной загрузки и т.д. Запомните! Для повторной загрузки операционной системы в память нажать одновременно клавиши <Ctrl> <ALT> <Del>. После успешно выполненной загрузки в оперативную память модуля расширения IO.SYS и базового модуля MSDOS.SYS загружается командный процессор СОМMAND.COM и обрабатывается файл конфигурации CONFIG.SYS, который содержит команды подключения необходимых драйверов. Этот файл может отсутствовать, если вас устраивает базовый вариант операционной системы. Затем выполняется обработка командного файла AUTOEXEC.BAT. С помощью этого файла вы можете произвести настройку параметров операционной среды. Например, создать виртуальный диск, обеспечить смену режимов печати, загрузить вспомогательные программы и т.д. Внимание! Файлы с расширением .ВАТ играют при работе в системной среде особую роль. Они содержат совокупность команд операционной системы или имен исполняемых файлов После запуска файла с расширением .ВАТ все записанные в нем команды выполняются автоматически одна за другой.
Файл со стандартным именем AUTOEXEC.BAT отличается от других файлов типа .ВАТ тем, что выполнение помещенных в него команд начинается автоматически сразу после загрузки операционной системы. В случае отсутствия файла AUTOEXEC.BAT вам будет предложено ввести дату время:
После окончания работы файла AUTOEXEC.BAT, а также если этот файл не обнаружен) , на экран дисплея будет выдано приглашение системного диска, например С:\>. Это является свидетельством нормального завершения процесса загрузки, и вы можете приступит к работе, введя имя прикладной программы или команду операционной системы. Примечание. Файлы CONFIG.SYS и AUTOEXEC.BAT могут отсутствовать. В этом случае параметры операционной среды будут установлены по умолчанию. Запомните! На жестком диске необходимо обеспечить постоянное хранение
операционной системы. |
|