Файл C0MMAND.COM

 Рубрика: Операционные системы и процесс начальной загрузки

Файл C0MMAND.COM в MS-DOS играет роль программной оболочки и командного процессора. Именно с этой программой «общаются» пользователи, когда на экране появляется приглашение командной строки. Файл C0MMAND.COM является третьим файлом, загружаемым на этапе инициализации компьютера. Его содержимое хранится в основной памяти наряду с содержимым файлов IO.SYS и MSDOS.SYS. Количество доступных команд зависит от используемой версии MS-DOS, причем команды подразделяются на два типа: встроенные и внешние.
Встроенные команды (иногда называемые также резидентными) — это обращения к процедурам, входящим в файл C0MMAND.COM. Поэтому при вызове их из командной строки они выполняются почти мгновенно. Типичными встроенными командами являются CLS и DIR. Внешних команд (их иногда называют временно загружаемыми — transient) намного больше, и их возможности гораздо шире. Программные коды, ответственные за выполнение внешних команд, не загружаются вместе с файлом C0MMAND.COM. Они хранятся на диске в каталоге DOS в виде СОМ или ЕХЕ-файлов (например, DISK-C0PY.COM или ATTRIB.EXE), которые считываются и загружаются в память при каждом вызове внешней команды, а после выполнения — выгружаются, освобождая место в системной памяти. Программы, соответствующие внешним командам, зачастую весьма громоздкие. Если бы они не были выделены в отдельные файлы, то размер файла COMMAND.COM оказался бы недопустимо большим, а память оказалась бы перегруженной «балластом» неиспользуемых кодов.