Основные функции операционных систем ms dos windows
Операционная система MS DOS имеет развитые средства доступа ко всем аппаратным компонентам, обладает достаточно гибкой файловой системой, основанной на иерархической структуре каталогов, удобным командным языком. Последнюю версию этой ОС представляет MS DOS 6.22. Средства, предоставляемые ОС этого класса, позволяют формировать удобную операционную среду для разработки программного обеспечения. С другой стороны, на их основе достаточно просто можно создавать автоматизированные рабочие места с простыми средствами доступа к прикладным пакетам и программам.
Основными компонентами MS DOS являются:
Д базовая система ввода-вывода — BIOS ( Basic Input / Output System );
Д системный загрузчик SB ( Svstem Bootstrap ) — размещается в блоке начальной загрузки ( Boot Record );
Д модуль расширения BIOS — располагается в скрытом файле IO . sys ;
Д модуль обработки прерываний — скрытый файл MSDOS . sys ;
Д командный процессор — файл command . com ;
Д утилиты, реализующие выполнение внешних команд MS DOS — файлы с расширением СОМ, например format . co m ;
Д драйверы устройств — размещаются в виде файлов на диске;
Д информация о желательных параметрах настройки MS DOS — при необходимости задается в файле конфигурации config . sys ;
Д командный файл, при необходимости выполняемый для настройки параметров и конфигурирования MS DOS имеет имя autoexec . bat .
Рассмотрим функции некоторых из перечисленных компонентов MS DOS .
Базовая система ввода-вывода находится в ПЗУ компьютера и устанавливает связь между обладающими некоторыми фирменными особенностями техническими средствами и стандартизированным программным обеспечением, а именно с операционной системой. Ее назначение состоит в выполнении наиболее простых и универсальных функций операционной системы, связанных с вводом-выводом. BIOS в ПЗУ содержит также тест функционирования компьютера, проверяющий работу памяти и устройств при включении питания. Кроме того, он содержит программу вызова загрузчика ОС.
BIOS в ПЗУ является общей и неизменяемой частью всех возможных операционных систем для данной модели ПЭВМ.
Системный загрузчик предназначен для считывания в оперативную память модуля расширения BIOS и модуля обработки прерываний.
Модуль расширения BIOS (файл IO.SYS) придает гибкость операционной системе, позволяет управлять с ее помощью набором аппаратных средств ПЭВМ, наиболее точно удовлетворяющим замыслу разработчиков ОС. Этот модуль сравнительно легко можно модифицировать с учетом нужд конкретной версии MS DOS . Этот модуль позволяет перекрыть функции BIOS в ПЗУ и обеспечивает возможность подключения дополнительных драйверов (программ обслуживания внешних устройств).
Модуль обработки прерываний (файл MSDOS . SYS ) образует верхний уровень операционной системы, с которым взаимодействует большинство прикладных программ. Компонентами данного модуля являются программы, обеспечивающие работу файловой системы, устройств ввода/вывода (клавиатуры, дисплея, принтера, портов), обслуживания некоторых ситуаций, связанных с завершением программ, их принудительным прерыванием и обработкой ошибок.
Командный процессор (файл command . co m ) на диске может занимать любое место и по сути представляет собой выполнимую программу. Командный процессор выполняет следующие функции:
Д прием и разбор команд, полученных с клавиатуры или из командного файла;
Д выполнение встроенных команд MS DOS , находящихся внутри файла COMMAND . COM ;
Д загрузка и выполнение внешних команд MS DOS (утилит) и прикладных программ, хранящихся в виде файлов типа co m и ехе.
Замечание. Исполняемые программы типа com не требуют настройки адресов после их загрузки в ОЗУ, программы типа ехе при загрузке в ОЗУ настраиваются по месту размещения — для них задаются соответствующие адреса сегментов.
При загрузке в ОЗУ командный процессор распадается на две части: резидентную (постоянно размещаемую в оперативной памяти) и нерезидентную (периодически изменяемую путем передачи данных между ОЗУ и диском). Резидентная часть содержит подпрограммы стандартной обработки прерываний с номерами 22 h . 24 h . Здесь же находятся, программа подзагрузки нерезидентной части в ОЗУ и подпрограмма инициализации, обрабатывающая файл автозапуска autoexec . bat при запуске машины.
Утилиты, или внешние команды MS DOS , представляют собой программы, поставляемые вместе с операционной системой в виде файлов. Они выполняют различные обслуживающие действия, например, форматирование дискет, проверку дисков и т. д.
Драйверы устройств представляют собой программы, дополняющие систему ввода вывода MS DOS и обеспечивающие обслуживание новых устройств или нестандартное использование имеющихся устройств. В частности, с помощью драйверов, например драйвера ansi . sys , обеспечивается требуемый способ формирования символов и вывода их на принтер. Драйверы загружаются в ОЗУ при загрузке операционной системы, а их имена указываются в файле конфигурации config . sys .
Загрузка и схема работы |
Процесс запуска ПЭВМ и подготовки ОС к работе включает следующие шаги:
1. При включении ПЭВМ управление передается BIOS . Она выполняет тестирование памяти, проверку состояния аппаратуры и инициализирует устройства. Параметры конфигурации компьютера извлекаются из так называемой энергонезависимой памяти ( CMOS ). При необходимости перед началом инициализации устройств нажатием клавиши можно передать управление программе изменения параметров конфигурации.
2. Управление конфигурацией ПЭВМ (задание параметров жесткого диска, указание привода для системного диска, задание пароля и др.) выполняется с помощью программы Setup .
3. Вызов загрузчика и загрузка ОС с помощью системного загрузчика
4. Установка драйверов, задание окружения, путей поиска файлов, числа буферов, числа одновременно открываемых файлов, кодовой таблицы и т. п. выполняются с помощью файлов автозапуска autoexec . bat и конфигурации config . sys . Схематично взаимодействие прикладных программ с аппаратно-программным обеспечением ПЭВМ показано на рисунке.
Файловая система является одной из важнейших подсистем, поскольку вся информация на внешних носителях хранится в виде файлов. Обращения к файловой системе прикладные программы через функции прерываний MS DOS . С их помощью выполняются все файловые операции: создание и удаление файлов и каталогов, запись и чтение данных, получение справочной информации и другие. Файловая система работает с внешними накопителями с помощью драйверов, последние, в свою очередь, пользуются помощью BIOS .
Система управления памятью используется для распределения основной памяти выполняемым программам. Управление памятью MS DOS выполняет с помощью блоков управления памятью — МСВ ( Memory Control Block ). Память разбивается на блоки. Каждому блоку предшествует МСВ, в котором записываются характеристики этого блока. Для вновь запускаемой программы выделяется нужное количество блоков. При освобождении памяти и при выполнении новых запросов на выделение памяти также используются МСВ с проверкой правильности их содержимого.
Система управления программами при запуске обеспечивает выполнение нескольких операций. Сначала она обращается к системе управления памятью для подготовки нужного количества блоков. С помощью файловой системы файл с программой загружается в основную память. При необходимости (это касается только программ типа ехе) программа настраивается на физический адрес размещения, затем ей передается управление. С помощью системы управления программами решаются также задачи запуска оверлейных программ (программ с перекрытиями) и задачи обеспечения работы резидентных программ (постоянно присутствующих в основной памяти).
Система связи с драйверами устройств. В MS DOS предполагается, что прикладные программы не должны непосредственно вызывать драйверы устройств. По-видимому, такой запрет введен для обеспечения совместимости различных версий MS DOS . Поэтому операции ввода/вывода в прикладных программах, как правило, выполняются через обращения к MS DOS , которая при необходимости обращается за помощью к драйверам.
Харктеристика команд |
DIR — выдача списка имен файлов и подкаталогов текущего каталога;
MD — создание каталога.
Внешние команды (утилиты) MS DOS поставляются вместе с операционной системой в виде отдельных файлов. К ним, например, относятся такие важные команды:
DISKCOMP — сравнение дискет;
DISKCOPY — копирование дискет;
FDISK — разметка жесткого диска;
FORMAT — форматирование дисков и дискет;
SYS — создание системной дискеты путем копирования системных файлов.
Справочная система |
Перемещение по справочной системе выполняется путем выбора нужных команд, в рамках справки для выбранной команды можно выбирать разделы для просмотра. Возврат на предыдущий уровень справочной системы выполняется с помощью клавиши Esc >. Выход из справочной системы выполняется по команде File | Exit (Файл | Выход).
Файловая организация данных |
Файлы
Имя файла подбирается таким образом, чтобы по нему можно было легко определить содержимое. Расширение имени, как правило, указывает на тип хранящихся в файле данных. Ниже представлены используемые MS DOS типовые расширения имен файлов:
Типовое расширение | Содержимое файла |
arj | Архив, созданный архиватором ARJ |
asm | Текст программы на языке Ассемблера |
bak | Резервная копня файла |
bat | Командный файл |
bin | Двоичный фанл с машинной программой или драйвером |
com | Выполнимая программа с абсолютным адресом загрузки |
doc | Файл документа |
dbf | Данные СУБД dBASE , Clipper |
ехе | Выполнимая программа, требующая настройки |
inf | Информационный файл |
ini | Файл описания конфигурации программы |
obj | Программа в объектном коде |
pas | Исходный текст программы на Паскале |
sys | Драйвер управления устройство7м |
Типовые расширения имен удобны тем, что позволяют в ряде случаев обращаться к файлам только по имени. К примеру, при вызове программ и командных файлов для выполнения не требуется указывать типовые расширения ехе, сом и bat . С другой стороны, указав только расширение, можно выбрать все файлы определенного типа па диске с тем, чтобы выполнить некоторые действия над всей группой файлов, например скопировать на другой диск, распечатать содержимое на принтере, удалить и т.д.
Для обращения к группам файла применяются групповые имена, образуемые с использованием символов * и ?. Символ * в имени файла и его расширении трактуется операционной системой как любая последовательность символов, символ ? — как любой одиночный символ.
Имя файла с приставкой-указателем устройства и цепочки каталогов называется спецификацией файла. Полная спецификация файла (включающая имя привода и всю цепочку каталогов) определяет его местоположение в древовидной структуре каталогов Пример такой структуры представлен на рисунке
Отметим, что в среде MS DOS для любой выполняемой программы или отдельных ее компонентов (например, левой и правой панели оболочки Norton Commander ) устанавливается текущий каталог. Если адресуемый файл находится в текущем каталоге, то достаточно указать только его имя. В противном случае необходимо указать его полную спецификацию или указать путь поиска данного файла по дереву каталогов в команде PATH в файле автозапуска autoexec . bat .
Файловая структура диска
Стартовый сектор |
FAT |
Корневой каталог |
Файлы, каталоги, свободное поле |
CVF |
В дополнение к перечисленным ранее элементам в MS DOS , начиная с версии 6.0, на диске размещается используемый программой сжатия данных DoubleSpace файл сжатого тома CVF ( Compressed Volume File ). Таких файлов в системе может быть до 255.
Жесткие диски характеризуются возможностью предварительного разбиения их на несколько разделов. Поэтому в начальных секторах жесткого диска содержится информация о количестве разделов, их местоположении и размерах. Разделы жесткого диска рассматриваются как автономные виртуальные диски. Каждый из них инициализируется отдельно, имеет собственное имя ( C :, D :, E . ) и элементы файловой структуры, такие же, как у гибких дисков.
Таблица размещения файлов |
Размер раздела диска, Мб | Размер кластера, Кб | Потери на 1000 файлов, Мб |
16 — 127,9 | 2 | 1 |
128 — 255,9 | 4 | 2 |
256 — 511,9 | 8 | 4 |
512 — 999,9 | 16 | 8 |
Данные из таблицы целесообразно учитывать при принятии решения, стоит ли разбивать жесткий диск на несколько логических приводов.
Для повышения быстродействия при выполнении операций поиска в FAT последняя копируется в оперативную память. При большой FAT и относительно малой оперативной памяти возможны проблемы ее нехватки.
Для надежности сохраняются две копии FAT , расположенные одна за другой вслед за загрузочной записью. Однако MS DOS вторую копию FAT не использует. Элементы таблицы размещения файлов имеют длину 12 или 16 битов. Последний вариант используется в дисках с более чем 4080 кластерами, например в дисках емкостью 20 Мбайтов.
FAT содержит информацию о расположении файлов, свободном пространстве на диске и неисправных блоках, а также код формата диска. В первых двух элементах FAT первый байт задает код формата диска, остальные 2 или 3 байта всегда содержат FFh .
Примеры кодов, используемых для обозначения формата дисков:
Д F 0 h — DS ( Double Sided — двухсторонняя) / HD ( High Density — высокой плотности) — дискета 3.5 дюйма (18 секторов);
Д F 8 h — жесткий диск;
Д F 9 h — DS / QD ( Quadraple Density — учетверенной плотности)—дискеты 5.25 или 3.5 дюйма (9 секторов).
Каждому кластеру диска ставится в соответствие элемент FAT с тем же номером. Два элемента FAT (нулевой и первый) используются для задания кода формата диска, поэтому нумерация элементов таблицы начинается с 2. Для удобства нумерация кластеров при расчетах также начинается с 2.
Каждый элемент FAT представляет собой код из трех (12-битовая таблица) или четырех (16-битовая) шестнадцатеричных цифр. При этом используются следующие коды:
Д (0)000 h — кластер свободен;
Д (0)003 h — ( F ) FEFh — номера очередных кластеров файла;
Д ( F ) FF 7 h — дефектный кластер;
Д ( F ) FF 0 h -( F ) FF 9 h — резервные кластеры.
Пример цепочки FAT , описывающей расположение файла Ex . txt показан на рис унке
.
Как видно из рисунка, в каталоге для данного файла содержится номер первого кластера, занимаемого файлом. Этот номер одновременно определяет точку входа в FAT . Находящийся в ней элемент FAT указывает одновременно на очередной кластер файла и на очередной элемент FAT и т. д. до элемента таблицы, содержащего признак конца файла.