Структура MS DOS

advertisement
Системное программное обеспечение
Лекция № 7 «Структура MS DOS»
Структура MS DOS
В октябре 1980 г. менеджеры фирмы IBM занялись поисками OS для
своего 16-разрядного PC, находящегося в стадии разработки. В тот
период на ПЭВМ наиболее широко применялась OS CP/M (Control
Program for MicroComputers) фирмы Digital Research. Не достигнув
приемлемых соглашений с Digital Research, фирма IBM обратилась к
фирме Microsoft ( Билл Гейтс). В тот момент у Microsoft не было
соответствующей OS, но ей была известна небольшая фирма (Seattle
Computer Products), которая имела такую OS. За 50 000$ Билл Гейтс
приобрел права на эту OS. В дальнейшем эта OS послужила основой
для MS DOS. В ноябре 1980 года Microsoft и IBM подписали договор на
разработку OS для IBM PC. В феврале 1981 г. появилась первая версия
PC/MS-DOS, которая работала на IBM PC. В августе 1981 г. - PC
DOS 1.0 (эта версия была утверждена для применения на IBM PC).
Структура MS DOS
Операционная система MS DOS (Microsoft Disk Operating
System) состоит из следующих основных модулей:
Каждый из указанных модулей выполняет определенную
часть функций, возложенных на операционную систему. Места
постоянного размещения этих модулей различны.
Структура MS DOS
Структура MS DOS
Базовая
система
ввода/вывода
(BIOS)
находится
в
постоянном запоминающем устройстве (ПЗУ), а не на дисках, как все
остальные модули, и выполняет наиболее простые и универсальные
услуги операционной системы, связанные с осуществлением вводавывода. В функции BIOS входит также автоматическое тестирование
основных аппаратных компонентов (оперативной памяти и др.) при
включении машины и вызов блока начальной загрузки DOS.
Системный загрузчик
— это очень короткая программа,
единственная функция которой заключается в считывании с диска в
оперативную память двух других частей DOS — модуля расширения
базовой системы ввода/вывода и модуля обработки прерываний.
Базовый
модуль
(MSDOS.SYS)
реализует
основные
высокоуровневые услуги DOS, поэтому его и называют основным.
Структура MS DOS
Модуль расширения базовой системы ввода/вывода (IO.SYS)
дает
возможность
использования
дополнительных
драйверов,
обслуживающих новые внешние устройства. Файлы IO.SYS и
MSDOS.SYS называют системными.
Внешние драйверы устройств - это те драйверы, которые
не вошли в состав BIOS. Это чаще всего драйверы мыши, принтера,
таймера. Все внешние драйверы хранятся на дисках в виде отдельных
файлов и являются компонентами MS DOS.
Командный процессор (интерпретатор) (COMMAND.COM)
обрабатывает команды пользователя. Все команды COMMAND.COM
делятся на внутренние, которые интерпретатор выполняет сам (DIR,
COPY), и внешние, для выполнения которых вызываются одноименные
файлы (форматирование диска, очистка экрана, проверка диска).
Структура MS DOS
Утилиты DOS — это программы, поставляемые вместе с
операционной системой в виде отдельных файлов. Они выполняют
действия обслуживающего характера, например, разметку дискет,
проверку дисков и т.д.
Есть еще ряд важных для MS DOS файлов:
Файл
config.sys
представляет
собой
текстовый
файл,
предназначенный для определения конфигурации MS-DOS, а также для
загрузки
драйверов
и
резидентных
автоматически программой
программ.
Он
создается
установки MS-DOS и затем при
необходимости редактируется пользователем. Для редактирования
файла можно использовать текстовый редактор edit, который
входит в состав MS-DOS.
Структура MS DOS
На этапе установки MS-DOS в корневом каталоге диска C:
создается файл с именем autoexec.bat. Этот файл запускается сразу
после загрузки MS-DOS и содержит команды определения среды
выполнения
программ,
а
также
вызовы
инициализирующих
и
резидентных программ.
Модульная структура MS-DOS значительно облегчает ее
модификацию,
т.е.
она
открыта
для
наращивания
возможностей. Уровни вложенности элементов MS-DOS:
своих
Структура MS DOS
На внутреннем уровне находятся программы, управляющие
аппаратурой, а на внешнем - средства для организации диалога с
пользователями. Основная часть MS-DOS - промежуточные уровни,
которые
управляют
файловой
системой,
выполнением
и
взаимодействием программ, использованием памяти.
Структура 3,5" системного диска, состоящего из 2847
секторов:
Структура MS DOS
•
Тестирование
ПК
выполняет
(BIOS
комплекс
программ
начального
тестирования компьютера)
•
Загрузка
MS
(считывание
операционной
системы
из
DOS
внешнего
запоминающего устройства
в оперативную память)
•
Настройка
MS
DOS
(настройка ОС выполняется
по командам, записанным в
файлах
autoexec.bat.
config.sys
и
Структура MS DOS
В зависимости от применения физических адресов, различные
области памяти имеют различные названия. Рассмотрим типы
памяти, различаемые ОС MS-DOS.
Базовая
память
является
основным
видом
памяти
и
присутствует в каждом компьютере. Все программы, работающие с
DOS, могут использовать базовую память размером до 640 Кбайт.
Верхняя граница UMA (Upper Memory Area) ограничена 1024 Кб. Это
связано с тем, что первые процессоры могли осуществлять адресацию
к памяти объемом 1 Мб (адресная шина была 20-разрядной).
Структура MS DOS
Если компьютер снабжен наращенной памятью, то первые 64
Кб этой памяти называются областью старших адресов – HMA
(High Memory Area). Эта область памяти становится доступна при
использовании
специального
драйвера
управления
наращенной
памятью HIMEM.SYS. Этот драйвер позволяет загружать DOS в
HMA, что позволяет освободить порядка 50 Кб базовой памяти.
Область наращенной памяти начинается с 1024 Кб. В
англоязычной литературе эта область памяти обозначается EMB
(Extended Memory Block) или XMS (eXtended Memory Specification).
В 1985 году был разработан стандарт памяти EMS (Expanded
Memory Specification). Этот стандарт позволяет получить доступ
через верхнюю память, блоки UMB (Upper Memory Blocks) к памяти
объемом до 32 Мб.
Структура MS DOS
Структура MS DOS
К управлению памятью в DOS имеют отношение различные
установки и команды. Четыре из них могут определяться в
CONFIG.SYS: HIMEM.SYS; DOS=HIGH, UMB; EMM386.EXE и
DEVICEHIGH.
Кроме
того,
можно
использовать
команду
LOADHIGH, которую удобно поместить в файл AUTOEXEC.BAT.
Для правильной работы с системным программным и
аппаратным обеспечением, нужно четко представлять себе механизм
взаимодействия прикладной программы с компьютером.
Структура MS DOS
Функции, выполняемые BIOS и DOS, а также драйверы
образуют так называемые системные программные средства, без
использования которых невозможно написать ни одну программу на
языке ассемблера. При разработке программ на языках высокого
уровня многие средства DOS реализуются в неявной форме с помощью
использования встроенных функций или библиотечных процедур, в то
время как ассемблерная программа обращается к функциям BIOS и
DOS
непосредственно
с
помощью
механизма
программных
прерываний. Для вызова функции (модулей) BIOS или DOS программа
использует команду int n с соответствующим номером прерывания n.
Программа передает параметры модулям BIOS (или DOS) через
регистры процессора, результат работы модуля возвращается
также в регистрах.
Структура MS DOS
BIOS
обеспечивает
управление
аппаратурой
компьютера на самом низком (физическом) уровне путём
обращения к портам и аппаратным буферам, поэтому её
программные модули меняются с изменением "материнской"
платы компьютера.
Прикладные программы используют не все возможные
номера прерываний для BIOS. Часть из них предназначена для
аппаратных прерываний от периферийных устройств, а часть
зарезервирована для MS-DOS.
Ниже перечислены функции BIOS, предоставляемые
пользовательским программам на ассемблере:
Структура MS DOS
• работа с видеоконтроллером (Int 10h)
• определение конфигурации компьютера (Int 11h)
• определение объема оперативной памяти (Int 12h)
•
обслуживание дисковой подсистемы (Int 13h)
• обслуживание последовательного порта (Int 14h)
• работа с клавиатурой (Int 16)
• вывод данных в параллельный порт (Int 17h)
• перезагрузка операционной системы (Int 19h)
• работа с системными часами (Int 1Ah)
Структура MS DOS
Программы DOS, размещаемые в основном в файлах Io.sys и
Msdos.sys, образуют более высокий уровень управления компьютером через
механизм прерываний:
• завершение работы программы (Int 20h)
• чтение диска и запись на диск с абсолютной адресацией секторов (Int 25h,
Int 26h)
• завершение работы программы с оставлением ее резидентной в памяти
(Int 27h)
• недокументированное
прерывание,
используемое
резидентными
программами (Int 28h)
• выполнение команды MS-DOS (Int 2Eh)
• мультиплексное прерывание, используется для программы печати print и
других резидентных программ; открывает доступ к внутренним функциям
и структурам MS-DOS (Int 2Fh)
Структура MS DOS
Важные функции выполняет прерывание Int 21h – их можно
разделить на следующие группы:
• получение системной информации
• символьный ввод/вывод
• работа с файловой системой
• управление программами
• управление памятью
• связь с драйверами устройств
• прочий системный сервис (обработка ошибок, служба времени)
Структура MS DOS
MS DOS послужила основой для целого ряда совместимых с
ней ОС, наиболее развитая из которых - PC DOS фирмы IBM.
Развитие самой MS DOS закончилось на версии 6.22, версия 7
существует только как встроенная в Windows 9x. PС DOS
продолжает развиваться и сейчас существует в версии 8, в которую
опционно включены, например, невытесняющая многозадачность и
графический интерфейс. Несмотря на явную бесперспективность
развития MS DOS, ее применение будет продолжаться, прежде всего,
в качестве ОС клиентского рабочего места с минимальными
вычислительными
ресурсами.
Огромное
число
приложений,
существующих для MS DOS, диктует для других ОС необходимость
обеспечивать ту или иную эмуляцию среды MS DOS для выполнения
этих приложений.
Download