5 Командный процессор Мальцев.ppt
- Количество слайдов: 10
Командный процессор
Командный процессор (COMMAND. COM) ► Третий модуль DOS, располагающийся на системном диске, - это командный процессор. В отличие от рассмотренных выше первых двух модулей (IO. SYS и MSDOS. SYS), файл с командным процессором (COMMAND. COM) может занимать на системном диске любое место и трактуется как обычная программа. ► Основные функции командного процессора заключаются в следующем: 1. Приём и разбор команд, полученных с клавиатуры или из командного файла. 2. Исполнение встроенных команд DOS, находящихся внутри файла COMMAND. СОМ. 3. Загрузка и исполнение внешних программ DOS и прикладных программ (находящихся в файлах типа СОМ и ЕХЕ). Запуск прикладной программы осуществляется так же, как и обращение к внешней команде DOS (утилите), поскольку те и другие реализованы одинаково; командный процессор, в сущности, не отличает их друг от друга.
► В функции командного процессора входит также исполнение файла автозапуска (AUTOEXEC. BAT). ► Когда в качестве команды DOS командный процессор встречает имя файла, не совпадающее с именами встроенных команд, производится анализ типа этого файла, указанного в каталоге. Файлы типов СОМ и ЕХЕ считаются загрузочными и обрабатываются соответствующим образом, а файл типа ВАТ трактуется как командный. ► Исполняемые файлы типа СОМ не требуют настройки адресов после их загрузки в оперативную память, а программы типа ЕХЕ при загрузке с диска в оперативную память нужно настроить по месту размещения, т. е. задать соответствующие адреса сегментов.
► Когда в качестве команды DOS дается имя командного файла, командный процессор начинает последовательно читать и интерпретировать содержащиеся в нем строки, каждая из которых может содержать одну команду, метку или комментарий. Если в очередной строке стоит команда, осуществляющая вызов некоторой программы, то интерпретация командного файла приостанавливается 'и начинается работа вызванной программы. После ее завершения управление возвращается командному процессору. ► Язык команд DOS служит основным средством общения пользователя с дисковой операционной системой. После вызова какой-либо прикладной программы ("задачи") пользователь взаимодействует с ней, а не с DOS, вплоть до завершения задачи, после чего вновь вступает в действие командный процессор.
► Общий вид. команды ДОС: ► nnn а 1 а 2. . . ak /fl. . . /fn. ► Здесь nnn - имя команды (программы). Это обязательный элемент. Аргументы a 1. . . ak требуются не во всякой команде, и кроме того, в некоторых командах часть из них может опускаться. То же самое относится к параметрам (флажкам) fl. . . tn. Аргументы обычно указывают на те объекты, с которыми имеет дело данная команда: имена накопителей, каталогов, файлов, внешних устройств. Флажки служат для задания различных модификаций и режимов в исполнении команды.
► Если в конкретной команде ДОС предусмотрено задание неполного списка аргументов и/или флажков, то командный процессор подставляет вместо недостающих параметров определенные значения. Эта операция называется подстановкой по умолчанию. ► При загрузке в оперативную память командный процессор распадается на две области: резидентную, которая располагается вслед за двумя рассмотренными выше модулями DOS, и нерезидентную, которая располагается на старших адресах ОЗУ.
► Резидентная часть содержит подпрограммы стандартной обработки прерываний с десятичными номерами 34 - 36, которые разработчик прикладной системы может переопределить по-своему. Здесь же находится программа подзагрузки нерезидентной части командного процессора в оперативную память. Кроме того, в состав резидентной части входит подпрограмма инициализации, которая обрабатывает файл AUTOEXEC. BAT при запуске машины. ► Нерезидентвая часть включает программу обработки команд DOS, поступающих с терминала или из командных файлов. В нерезидентную часть входит загрузчик внешних программ, задачей которого является чтение очередной программы с диска в оперативную память, настройка адресов и переход на ее исполнение.
► Поскольку нерезидентная часть командного процессора располагается на старших адресах ОЗУ, любая прикладная программа, загружаемая на младшие адреса, может частично или полностью занять и "затереть" эту область памяти. По окончании такой программы управление всегда возвращается в резидентную часть командного процессора, который в этом случае пытается восстановить затертую иерезидентную часть, загружая ее с системного диска. Именно поэтому на машинах без жесткого диска после окончания работы некоторых прикладных программ на экран выдается сообщение "Установите системный диск в драйвер А: . . . ". Это значит, что прикладная программа затерла нерезидентную часть командного процессора, а резидентная часть, установив этот факт, делает попытку восстановить ее с гибкого диска. На машинах, в которых роль системного играет жесткий диск, такая ситуация разрешается незаметно для пользователя, поскольку командный процессор всегда есть на жестком диске - от пользователя не требуется никаких действий для его загрузки.
► Подпрограмма инициализации располагается в конце резидентной части командного процессора. Поскольку она срабатывает лишь один раз при запуске машины, занимаемая ею память может быть использована прикладными программами; поэтому первая же прикладная программа размещается в ОЗУ на месте этой подпрограммы, что позволяет экономно использовать оперативную память. ► Таким образом, после загрузки и инициализации командного процессора оперативная память разделяется на три области: ► - область DOS - от младших адресов, объемом около 60 К; ► - область прикладных программ максимальным объемом около 580 К; ► - - системная область - на старших адресах ОЗУ объемом 384 К.
Работу выполнил Мальцев Виктор Группа Мп 21 -07


