Какая часть командного процессора ms dos выполняет файл autoexec bat и отвечает за управление

Обновлено: 04.07.2024

Основную роль в установлении конфигурации DOS играют файлы CONFIG.SYS и AUTOEXEC.BAT. DOS при начальной загрузке считывает из корневого каталога загрузочного диска файлы CONFIG.SYS и AUTOEXEC.BAT и выполняет содержащиеся там команды.

Файл CONFIG.SYS является текстовым файлом, в котором содержатся специальные команды для настройки конфигурации DOS: подключения различных драйверов, определения размеров системных таблиц DOS и т.д. Заданные в файле CONFIG.SYS команды выполняются в процессе начальной загрузки DOS.

После завершения выполнения файла CONFIG.SYS автоматически выполняется командный файл AUTOEXEC.BAT, если он имеется в корневом каталоге загрузочного диска. Как правило, в файл AUTOEXEC.BAT записывают команды для запуска резидентных программ и других программ, которые целесообразно запускать при каждой загрузке DOS, а также команды для установки переменных окружения DOS (команда Set), задания списка каталогов, в которых производится поиск запускаемых программ (команда Path), и установки формата приглашения DOS (команда Prompt).

Файл CONFIG.SYS содержит специальные команды, используемые при начальной загрузке DOS. Эти команды задают параметры DOS, а также указывают, какие драйверы (то есть программы, расширяющие возможности операционной системы), необходимо загрузить в оперативную память. Файл CONFIG.SYS должен находиться в корневом каталоге диска, с которого загружается DOS. Если файл CONFIG.SYS там отсутствует, то параметры DOS будут установлены по умолчанию.

CONFIG.SYS является текстовым файлом, большинство строк этого файла содержит команды, выполняемые при начальной загрузке DOS. Такие строки имеют вид:

Кроме того, в файле CONFIG.SYS могут содержаться следующие строки:

· комментарии — строки, игнорируемые при начальной загрузке DOS. Строки комментариев начинаются либо с символа «;», либо с символов «REM» (в любом регистре) с последующим пробелом;

· заголовки блоков — строки, в которой приводится (начиная с первой колонки) имя блока в квадратных скобках. Заголовок блока предваряет строки с командами, относящимися к данному блоку. Команды из блока могут выполняться или не выполняться, в зависимости от выбора пользователя в стартовом меню.

Выполнение файла CONFIG.SYS. Если в файле CONFIG.SYS нет заголовков блоков, то команды этого файла выполняются по очереди, в том порядке, в котором они указаны в файле CONFIG.SYS. Строки комментариев игнорируются.

Если же в файле CONFIG.SYS имеются заголовки блоков, то в блоке [MENU] должно задаваться стартовое меню, выводимое в начале выполнения файла CONFIG.SYS. Пользователь должен выбрать один из пунктов этого меню, после чего DOS начинает выполнение файла CONFIG.SYS, но выполняются лишь команды из блока, соответствующего выбранному пользователем пункту меню, а также из блока [COMMON]. Содержимое остальных блоков игнорируется (как и строки комментариев). При выполнении блока его команды выполняются по очереди.

Загрузка драйверов и программ. Очень важная группа команд файла CONFIG.SYS служит для загрузки драйверов и резидентных программ:

DEVICE = имя_файла_дpaйвepa (параметры) — загрузка драйвера в

DEVICEHIGH = имя-файла-драйвера (параметры) — загрузка драйвера в верхнюю память (т.е. в память с адресами от 640 Кбайт до 1 Мбайта);

INSTALL = полное-имя-программы [параметры) — установка резидентной программы.

Использование верхней памяти и НМА. Команда DOS файла CONFIG.SYS позволяет разрешить использование верхней памяти (UMB), то есть памяти с адресами от 640 Кбайт до 1 Мбайта, драйверами и резидентными программами, а также переместить часть системных файлов DOS в первые 64 Кбайта расширенной памяти (так называемую область НМА). Все эти меры предназначены для освобождения обычной памяти для прикладных программ:

DOS=HIGH — переместить часть кода MS DOS в первые 64 Кбайта расширенной памяти;

DOS=UMB — разрешить использование блоков верхней памяти (с адресами от 640 Кбайт до 1 Мбайта) для загрузки драйверов и резидентных программ;

DOS=HIGH,UMB (а также DOS=UMB,HIGH) — эквивалентно командам DOS=HIGH и DOS=UMB .

Команды для задания размеров внутренних структур DOS. Большая группа команд файла CONFIG.SYS служит для задания характеристик различных внутренних структур DOS:

BUFFERS = число_буферов — установка числа буферов для операций ввода-вывода с диском. Для компьютера без жесткого диска рекомендуется использовать 4—5 буферов, с жестким диском емкостью до 20 Мбайт — 15-20 буферов, с жестким диском емкостью 20-40 Мбайт — 30-40 буферов, свыше 40 Мбайт — 40 буферов. При кэшировании жесткого диска количество буферов можно установить минимальным (4-5). Пример: Buffers= 8 ;

LASTDRIVE = буква — установка последней буквы, которая может использоваться в качестве имени дисковода. Пример: LASTDRIVE=Z ;

FILES = число_файлов — установка максимального числа одновременно открытых файлов. При работе с некоторыми базами данных необходимо большее значение параметра FILES — от 50 до 80. Пример: FILES=50 ;

FCBS = число_блоков-FCB — задание количества блоков управления файлами (FCB), которые DOS может открыть одновременно. Блоки FCB (по умолчанию их число равно четырем) используются в основном в программах, рассчитанных на очень старые версии DOS (до 3.0). Пример: FCBS=8 ;

Управление процессом начальной загрузки DOS. Следующая группа команд используется для управления процессом начальной загрузки DOS:

SHELL=полное_имя_файла_командного_процессора (параметры) — позволяет указать имя и размещение командного процессора (интерпретатора команд) MS DOS. Обычно команда используется в виде

Команды для установки различных режимов DOS. Следующая группа команд файла CONFIG.SYS служит для установки различных режимов DOS:

Break = on или Break = off — установить или отменить для программ DOS режим проверки нажатия клавиш Ctrl+Break или Ctrl+C при операциях ввода-вывода с диском. Это позволяет прерывать выполнение программ, которые иначе бы выполнялись до своего завершения. Изменить данный режим можно и впоследствии командами DOS: BREAK ON и BREAK OFF ;

Country = код_страны, кодовая_страница, полное_имя_файла_COUNTRY.SYS — настройка на принятые в стране правила для отображения времени, даты и денежных сумм, перевода прописных букв в строчные и обратно и т.д.. В MS DOS, начиная с версии 6.2, предусмотрены установки для России: код страны 007, кодовая страница 866. В предыдущих версиях DOS наиболее подходящим являются кода страны 049 и кодовая страница 437.

Numlock = on или Numlock = off — включает или отключает фиксацию цифровой клавиатуры (т.е. режим «Num Lock», отображаемый световым индикатором «Num Lock» клавиатуры).

При начальной загрузке DOS после завершения выполнения файла CONFIG.SYS автоматически выполняется командный файл AUTOEXEC.BAT, если он имеется в корневом каталоге загрузочного диска. В файл AUTOEXEC.BAT целесообразно записать команды, которые должны выполняться каждый раз при начальной загрузке операционной системы. Эти команды могут осуществить необходимую настройку операционной системы и установить удобное для работы окружение.

Как правило, в файл AUTOEXEC.BAT записывают следующие команды:

· команды запуска резидентных программ и других программ, которые целесообразно запускать при каждой загрузке DOS;

· команды для установки переменных окружения DOS (команда SET);

· команду Path для задания списка каталогов, в которых производится поиск запускаемых программ;

· команду Prompt для установки формата приглашения DOS.

При наличии файла AUTOEXEC.BAT DOS не задает в процессе начальной загрузки вопросов о текущей дате и времени.

Установка списка каталогов, в которых производится поиск программ. С помощью команды DOS Path можно установить, в каких каталогах будет производиться поиск выполняемых программ. После ввода любой команды, не являющейся внутренней командой DOS, поиск соответствующей программы производится сначала в текущем каталоге, а затем в каталогах, указанных в команде Path. Каталоги в команде path перечисляются через точку с запятой. Формат команды:

path имя-каталога (; имя-каталога).

Просмотр каталогов, заданных в команде Path, производится в том же порядке, в котором они указаны в команде. В списке каталогов, задаваемом в этой команде, следует перечислить через точку с запятой каталоги, в которых находятся исполняемые программы общего назначения. Сначала лучше указать более часто используемые каталоги. Много каталогов в команде Path указывать нежелательно, так как это приведет к длительному поиску нужной команды на диске, особенно при отсутствии кэширования дисков.

Установка формата приглашения DOS. Для изменения вида приглашения DOS (т.е. текста, который показывает, что DOS готова к приему команд пользователя) используется команда Prompt. Формат команды: prompt (текст) . В тексте, указываемом в команде Prompt, можно употреблять специальные сочетания символов $р, $n, $d, $t, $h, $e, $g и др. Их смысл объяснен в главе 16. Так, команда PROMPT $p$g устанавливает приглашение DOS, содержащее информацию о текущем каталоге и символ «>», например C:\W0RK\DOC . Такое приглашение обычно и используется.

Установка переменных окружения. DOS имеет специальную область памяти, называемую окружением (environment), в которой она хранит набор Строк символов, которые могут использоваться программами. Каждая строка символов в окружении имеет вид имя-переменной-значение , где

имя_переменной — это строка символов, не содержащая знаков равенства и пробелов, а значение — любая строка символов. Для установки переменных окружения может использоваться команда DOS Set. Формат команды:

set переменная = значение

Здесь переменная — любая строка, не содержащая знаков равенства и пробелов, а значение — любая строка символов. При выполнении команды DOS преобразует в имени переменной (но не в значении) строчные буквы в прописные. Наиболее часто используются следующие переменные окружения:

TEMP — указывает имя каталога, в котором многие программы создают временные файлы; ТМР — отдельные старые программы создают временные файлы в каталоге, заданном переменной ТМР;

BLASTER — указывает параметры звуковой карты, без этого некоторые DOS-программы не могут работать с Sound Blaster-совместимыми звуковыми картами. Например, SET BLASTER=a330 i9 d1 t2 сообщает программам, что звуковая карта имеет базовый порт ввода-вывода 330, ей назначено прерывание IRQ номер 9, канал DMA 1, а тип карты — 2 (совместимый с Sound Blaster Pro);

Запуск необходимых программ. В файл AUTOEXEC.BAT целесообразно включить команды запуска программ, которые устанавливают привычную рабочую обстановку на компьютере. Однако излишне перегружать файл AUTOEXEC.BAT не следует, так как это увеличивает время загрузки. Лучше туда включать только команды для запуска самых необходимых программ, удаляя или превращая в комментарии те команды, которые больше не нужны. Особенно следует обращать внимание на запуск резидентных программ, поскольку они занимают столь ценную оперативную память.

Ниже обсуждаются программы, которые наиболее часто включаются в файл AUTOEXEC.BAT.

Загрузка экранных шрифтов. Если видеоконтроллер компьютера не русифицирован аппаратно, то для отображения русских букв в текстовом режиме монитора следует предварительно загрузить русские буквы в знакогенератор видеоконтроллера.

Драйверы клавиатуры. Для того чтобы в программах DOS с клавиатуры можно было вводить русские буквы, необходимо установить драйвер клавиатуры, который мог бы переводить клавиатуру в режим ввода русских букв.

Блок начальной загрузки вместе с IO.sys и MSDOS.sys составляют ядро MS-DOS.

Командный процессор состоит из 3-х частей:

· резидентная (размещается в ОЗУ сразу после MSDOS.sys; включает процедуры обслуживания некоторых прерываний, процедуры обработки стандартных ошибок MS-DOS; процедуру загрузки транзитной части командного процессора);

· инициализирующая (в ОЗУ следует сразу за резидентной частью; во время загрузки OS ей передается управление; она выполняет файл AutoExec.bat и некоторые другие действия; эта часть командного процессора стирается из ОЗУ первой же загруженной программой);

· транзитная (загружается в старшие адреса ОЗУ; обрабатывает все внутренние команды, команды с клавиатуры и из *.bat-файлов; выдает системную подсказку MS-DOS; загружает в ОЗУ программы и передает им управление).

Дополнительные программы, входящие в MS-DOS, выполняющие определенные функции.

Специальные резидентные программы, которые управляют внешними устройствами. Драйверы загружаются в ОЗУ в том порядке, как они указаны в файле CONFIG.sys.

Специальный текстовый файл, где содержится информация о подгружаемых дополнительных драйверах и некоторая другая информация, касающаяся непосредственно MS-DOS и выполняемых в ее среде прикладных программ.

Специальный текстовый файл, где содержится дополнительная настроечная информация. MS-DOS выполняет этот файл автоматически, сразу после выполнения CONFIG.sys.

CLS - очищает экран. После этого на нем выводится только командная подсказка и курсор.

DIR - выводит список файлов и подкаталогов, находящихся в заданном каталоге. Если команда задается без параметров, то выводится метка диска и его номер, имена файлов и каталогов (по одному на строку), включая расширения, а также дату и время их последней модификации. После этого выводится число файлов в каталоге, общий объем (в байтах), занимаемый файлами, и объем свободного пространства на диске.

DIR [диск:][маршрут][имя файла][/P]

Параметр [диск:] [маршрут] задает диск и каталог, содержимое которого вы хотите видеть на экране. Параметр [имя файла] задает группу файлов или файл, которые нужно включить в список.

При указании параметра /P выводится по одному экрану списка файлов. Чтобы увидеть следующий экран, нужно нажать любую клавишу.

CD - выводит на экран имя текущего каталога или изменяет текущий каталог.

Например, команда cd \progs изменяет текущий каталог на под каталог PROGS. Чтобы вывести буквенную метку текущего диска и имя каталога, дайте команду CHDIR или CD без параметров.

Параметр [диск:][маршрут] задает диск (если он отличен от текущего) и каталог, куда вы хотите перейти. При этом определяет переход в порождающий каталог. Чтобы перейти в корневой каталог (вершину иерархии каталогов), наберите команду CD \.

Задав в команде CHDIR или CD буквенную метку диска, вы можете сменить текущий каталог на другом диске. Эту команду удобно также использовать для копирования файлов.

MD - cоздает каталог. Команду MKDIR или MD можно использовать для создания многоуровневой структуры каталогов.

Параметр "диск:" задает диск, на котором вы хотите создать каталог. "Маршрут" задает имя и расположение нового каталога.

Максимальная длина одного маршрута от корневого каталога до нового каталога - 63 символа (включая \).

Об удалении каталога рассказывается в описании команды RMDIR.

Предположим, вы хотите создать на текущем диске новый каталог и сохранить в нем информацию о доходах. Чтобы создать каталог с именем INCOME наберите команду mkdir \income.




RD - удаляет каталог. Перед удалением каталога нужно удалить в нем все файлы и подкаталоги (он должен быть пуст).

Параметр [диск:]маршрут задает расположение и имя удаляемого каталога.

О создании каталога рассказывается в описании команды MKDIR, о скрытых файлах - в описании ATTRIB и DIR /A, а об удалении файлов - в описании DEL. См. также команду DELTREE.

Invalid path, not directory, or directory not empty

(Недопустимый маршрут, это не каталог, или каталог не пуст)

При указании перед первым именем в маршруте символа обратной косой черты (\) MS-DOS интерпретирует каталог как подкаталог корневого каталога (независимо от текущего каталога). Если обратная косая черта не указывается, каталог интерпретируется как подкаталог текущего каталога.

Attempt to remove current directory - диск:маршрут

(Попытка удалить текущий каталог)

COPY - копирует в заданное место один или более файлов. Данную команду можно также использовать для комбинирования файлов. При копировании более одного файла MS-DOS выводит на экран имя каждого копируемого файла.

COPY [/Y¦/-Y][/A¦/B] источник [/A¦/B] [+ источник

Параметр "источник" задает расположение и имя файла или набора файлов, которые вы хотите копировать. Источник может содержать буквенную метку диска и двоеточие, имя каталога, имя файла или их сочетание. Параметр "приемник" задает расположение и имя файла или набора файлов, в которые вы хотите выполнить копирование. Приемник задается аналогично источнику.

Параметр /Y указывает, что вы хотите использовать команду COPY для замены существующих файлов без запроса на подтверждение.

По умолчанию, если в качестве целевого файла задается существующий файл, COPY будет запрашивать, хотите ли вы затереть существующий файл (в предыдущих версиях MS-DOS это происходило без запроса). При использовании команды COPY в командных файлах она будет вести себя как в предыдущих версиях. Указание данного параметра переопределяет все назначения по умолчанию и текущую установку переменной операционной среды COPYCMD.

Параметр /-Y показывает, что вы хотите, чтобы команда COPY при замене существующего файла выводила запрос на подтверждение.

Указание данного параметра переопределяет все назначения по умолчанию и текущую установку переменной операционной среды COPYCMD.

Параметр /A указывает текстовый файл ASCII. В файле ASCII для указания конца файла можно использовать символ конца файла (CTRL+Z). При комбинировании файлов COPY по умолчанию интерпретирует текстовые файлы как файлы ASCII. Когда /A предшествует списку имен файлов в командной строке, он применяется ко всем файлам, имена которые следуют за /A, пока COPY не обнаруживает параметр /B (в этом случае /B применяется ко всем файлам, имена которых предшествуют параметру /B). Когда параметр /A следует за именем файла, он применяется ко всем файлам, имена которых предшествуют параметру /A, и ко всем файлам, имена которых следуют за /A, пока COPY не обнаруживает параметр /B (в этом случае /B применяется ко всем файлам, имена которых предшествуют параметру /B).

Параметр /B указывает двоичный файл. Он задает, что интерпретатор команд должен считывать число байт, заданных размером файла в каталоге. Параметр /B - используется по умолчанию (если COPY не применяется для комбинирования файлов). Когда /B пред шествует списку имен файлов в командной строке, он применяется ко всем файлам, имена которых следуют за /B, пока COPY не обнаруживает параметр /A (в этом случае /A применяется ко всем файлам, имена которых предшествуют параметру /A). Когда параметр /B следует за именем файла, он применяется ко всем файлам, имена кото рых предшествуют параметру /B, и ко всем файлам, имена которых следуют за /B, пока COPY не обнаруживает параметр /A (в этом слу чае /A применяется ко всем файлам, имена которых предшествуют параметру /A).

Параметр /V проверяет корректность записи новых файлов. О копировании каталогов и подкаталогов подробнее рассказывается в описании команды XCOPY.

Приведем некоторые примеры. Следующая команда копирует файл и обеспечивает включение в него символа конца файла:

copy data1.doc data2.doc /a

Чтобы скопировать несколько файлов в один, перечислите в источнике любое число файлов (разделив их плюсом) и задайте имя результирующего файла:

copy mon.txt + tue.txt + wen.txt tree.txt

При этом файлы текущего диска и каталога mon.txt, tue.txt и wen.txt объединяются и помещаются в файл tree.txt (также в текущем каталоге). Целевой файл будет иметь текущую дату и время. Если опустить имя этого файла, MS-DOS использует в качестве приемника первый файл из списка.

Команда copy *.doc total.doc комбинирует все файлы в текущем каталоге в один файл total.doc. Если вы хотите скомбинировать несколько двоичных файлов, укажите параметр /B, например:

copy /b *.exe sup.exe

DEL - Удаляет заданные файлы.

DEL [диск:][маршрут]имя_файла [/P]

ERASE [диск:][маршрут]имя_файла [/P]

Параметр [диск:][маршрут]имя_файла задает расположение файла или набора файлов для удаления. /P перед удалением файла выводит запрос на подтверждение.

Например, чтобы удалить файл PRINT1.TMP в каталоге OUT на диске C вы можете воспользоваться командой:

О восстановлении удаленного файла рассказывается в описании команды UNDELETE, а об удалении каталога - в команде RMDIR. Об удалении каталога вместе с его файлами и всеми подкаталогами вы можете прочитать в описании команды DELTREE.

filename, Delete (Y/N)?

(имя_файла, удалить (Да/Нет)?)

Для подтверждения удаления нажмите Y, а для отмены и вывода следующего имени файла (при задании группы) - N. Нажатие CTRL+C останавливает работу DEL.

Набрав команду DEL с параметром [диск:]маршрут, вы можете удалить все файлы в каталоге. Чтобы удалить сразу несколько файлов, можно также использовать трафаретные символы (* и ?). Однако, чтобы избежать непреднамеренного удаления файлов, такой командой следует пользоваться внимательно. Сначала лучше дать команду DIR с теми же трафаретными символами и просмотреть список этих файлов. Команда del *.* приводит к выводу на экран запроса:

All files in directory will be deleted! Are you sure (Y/N)?

(Будут удалены все файлы в каталоге! Вы уверены (Да/Нет)?)

Чтобы удалить все файлы в текущем каталоге, нажмите Y и затем ENTER. Для отмены удаления - N и ENTER.

VER - выводит на экран номер версии MS-DOS.

FORMAT - форматирует диск для использования его MS-DOS. Команда FORMAT создает для диска новый корневой каталог и таблицу распре деления файлов. Она может также проверять плохие области на диске и удалять с диска все данные. Чтобы операционная система могла использовать новый диск, задайте для форматирования диска эту команду.

FORMAT диск: [/Q] [/U] [/S]

Параметр "диск:" задает дисковод, содержащий форматируемый диск. Это обязательный параметр. Если ни один из последующих параметров на задан, FORMAT использует для определения значений по умолчанию тип дисковода.

Параметр /U задает безусловное форматирование диска. При таком форматировании уничтожаются все существующие на диске данные, поэтому позднее вы уже не сможете их восстановить. Параметр /U следует использовать при получении во время работы с дискетой ошибок чтения/записи.

Параметр /Q задает быстрое форматирование диска. При указании данного параметра FORMAT удаляет информацию таблицы распределения файлов (FAT) и корневой каталог диска, но не просматривает его в поиске плохих областей. Используйте /Q только для форматирования ранее сформатированных дисков, в состоянии которых вы уверены.

SYS [диск1:][маршрут] диск2:

Параметр [диск1:][маршрут] задает расположение системных файлов. Если вы не указываете маршрут, MS-DOS ищет их в корневом каталоге системного диска. Параметр "диск2:" задает диск, на который вы хотите скопировать системные файлы. Эти файлы могут копироваться только в корневой каталог, но не в подкаталог.

MS-DOS больше не требует непрерывности двух системных файлов. Это означает, что если вы хотите скопировать новую версию MS-DOS на диск, содержащий системные файлы MS-DOS версии 3.3 или младше, то переформатировать диск не нужно.

Команда SYS не работает с дисками, переназначенными с помощью команд ASSIGN, JOIN или SUBST, а также с дисками, перенаправленными INTERLNK.

О копировании файлов рассказывается в описаниях команд COPY и XCOPY.

PRINT - печатает текстовый файл при использовании других команд MS-DOS. Данная команда работает в фоновом режиме при подключенном к параллельному или последовательному порту устройству вывода.

PRINT [[диск:][маршрут]имя_файла[ . ]] [/C] [/P]

Для установки PRINT с параметрами по умолчанию или вывода на экран содержимого очереди печати дайте команду PRINT без параметров.

Параметр [диск:][маршрут]имя_файла задает расположение и имя файла или набора файлов, которые вы хотите напечатать. В одной команде вы можете задать до 10 файлов.

Параметр /C удаляет файлы из очереди печати. Параметры /C и /P можно указывать в одной командной строке. Когда параметр /C указывается после списка имен файлов в командной строке, он применяется ко всем файлам, после которых указывается, пока PRINT не встречает параметр /P. В этом случае /P применяется к файлам, имена которых предшествуют /P.

Параметр /P добавляет файлы к очереди печати.

XCOPY - копирует каталоги, их подкаталоги и файлы (кроме скрытых и системных).

XCOPY источник [приемник]

Параметр "источник" задает расположение и имена файлов, которые вы хотите скопировать, и может включать в себя диск или маршрут. "Приемник" задает место, куда копируются файлы, и может включать в себя буквенную метку диска, маршрут, имя файла или их комбинацию.

Операционные системы MS-DOS, Windows 95, Windows 98 и старое железо компьютера — установка, настройка, использование.

Файлы MS-DOS Config.sys и autoexec.bat .

Файлы config.sys и autoexec.bat .

Как и ранее, прежде, чем приступить к рассмотрению темы, предлагаем вам скачать с нашего сайта архив файлов MS-DOS 6.22 OEM ver. 1.1.zip.

Конфигурация config.sys и autoexec.bat.

Наши цели и задачи :

Это происходит во всех версиях DOS вплоть до MS-DOS 7.0, 7.10 (на которой основаны Windows 95 и Windows 98). Также, начиная с MS-DOS 6.0 появилась возможность пропустить обработку CONFIG.SYS с помощью функциональных клавиш F5 и F8 , но эту возможность можно запретить с помощью директивы switches= в этом же файле. В предыдущих версиях MS-DOS (до версии 6.0) не существовало возможности обойти обработку CONFIG.SYS при загрузке, в результате ошибка в написании (например, указание обычного исполнимого файла вместо драйвера) могла приводить к фатальным сбоям и невозможности загрузиться и для восстановления требовалась загрузка со сменного носителя (дискеты).

Файл config.sys .

Файл config.sys

Файл autoexec.bat .

Файл autoexec.bat

Файлы MS-DOS.

Файлы и папки диска C:\*.*

Файлы и папки директории C:\DOS

Файлы и папки директории C:\DRIVERS

Файл MS-DOS MEM.EXE .

Ну и чуть-чуть затронем команду mem. Память MS-DOS рассматривали в предыдущей статье. Просмотреть распределение памяти можно запустив файл mem.exe, входящий в стандартный набор MS-DOS 6.22.

  • Параметр /CLASSIFY перечисляет загруженные в память программы и показывает, сколько используется обычной и старшей памяти. MEM /CLASSIFY подсчитывает также общий объем используемой памяти и выводит наибольшие свободные блоки. /CLASSIFY можно сократить до /C.
  • Параметр /PAGE делает паузу после вывода каждого экрана. /PAGE можно сократить до /P.

Итак, набираем в командной строке:

mem.exe /p/c

Изучаем процессы и то, как они используют память.

Примечание:
Скриншоты делались прекрасной програмкой ST.EXE. Она также видна среди процессов.

На сегодня всё. В следующей статье цикла рассмотрим как установить драйверы CD-ROM и звуковой карты.

Ядро MS-DOS включает блок начальной загрузки и файлы IO.SYS, MSDOS.SYS.

Non-System disk or disk error

Replace and press any key when ready

Не системный диск или ошибка диска

Замените и нажмите какую-либо клавишу, когда будет готово

Модуль расширения BIOS IO.SYS

Это резидентный модуль (всегда находится в ОЗУ после загрузки, пока включен ПК). Взаимодействует с BIOS. Расширяет возможности BIOS или изменяет ее свойства (там, где необходимо) с помощью дополнительных драйверов.

Модуль обработки прерываний MSDOS.SYS

Это резидентный модуль. Обеспечивает интерфейс высокого уровня для прикладных программ, содержит программные средства для управления файлами, устройствами ввода-вывода, обработки исключительных ситуаций (ошибок) и др. Прикладная программа вызывает функции этого модуля через механизм программных прерываний, передавая (принимая) информацию к (от) MS-DOS через регистры CPU или (и) области памяти ОЗУ. MSDOS.SYS транслирует (переводит) запрос прикладной программы в один или несколько вызовов IO.SYS + BIOS.

Отдельный модуль MS-DOS. Этот модуль может быть заменен на другой, более удобный. Предназначен для приема команд с клавиатуры или из *.bat - файлов и их выполнения; выполнения команд файла Autoexec.bat при загрузке MS-DOS; загрузки в ОЗУ и запуск на выполнение прикладных программ в среде MS-DOS.

Командный процессор состоит из 3-х частей :

– резидентной (размещается в ОЗУ сразу после MSDOS.SYS, включает процедуры обслуживания некоторых прерываний, процедуры обработки стандартных ошибок MS-DOS, процедуру загрузки транзитной части командного процессора);

– инициализирующей (в ОЗУ следует сразу за резидентной частью; во время загрузки OС ей передается управление; она выполняет файл Autoexec.bat и некоторые другие действия; эта часть командного процессора стирается из ОЗУ первой же загруженной программой);

– транзитной (загружается в старшие адреса ОЗУ; обрабатывает все внутренние команды, команды с клавиатуры и из *.bat-файлов; выдает системную подсказку MS-DOS; загружает в ОЗУ программы и передает им управление).

Внешние команды (программы)

Дополнительные программы, входящие в MS-DOS, выполняющие определенные функции.

Драйверы устройств

Специальные резидентные программы, которые управляют внешними устройствами. Драйверы загружаются в ОЗУ в том порядке, как они указаны в файле CONFIG.SYS.

Файл CONFIG.SYS

Файл AUTOEXEC.BAT

Специальный текстовый файл, в котором содержится дополнительная настроечная информация. MS-DOS выполняет этот файл автоматически, сразу после выполнения файла CONFIG.SYS.

Файловая система MS-DOS

Файл (по-английски file – папка, скоросшиватель) – это поименованная область памяти на каком-либо физическом носителе, предназначенная для хранения информации.

Совокупность средств MS-DOS, обеспечивающих доступ к информации на внешних носителях, называется системой управления файлами, или файловой системой.

Одно из понятий файловой системы MS-DOS – логический диск. В некотором приближении можно считать, что с точки зрения MS-DOS каждый логический диск – это отдельный магнитный диск. Каждый логический диск имеет свое уникальное имя.

В качестве имени логического диска используются буквы английского алфавита от A до Z (включительно).

Таким образом, количество логических дисков, может быть не более 26.

Буквы A и B – отведены строго под имеющиеся в IBM PC дисководы.

Начиная с буквы C именуются логические диски (разделы) жесткого диска (рис. 1).

В случае, если данный IBM PC имеет только один FDD, буква B пропускается (см. рис. 2).


Файл конфигурации CONFIG.SYS

Удобная рабочая обстановка для пользователя ПЭВМ может быть создана в результате продуманного конфигурирования и начальной настройки системы.

DOS дает возможность при запуске машины автоматически задавать определенные начальные условия, которые влияют на дальнейшую работу пользователя.

Осуществляется это с помощью содержимого двух особых файлов: CONFIG.SYS и AUTOEXEC.BAT. Указанные файлы, если они имеются в корневом каталоге системного диска, обрабатываются при любом включении или перезапуске машины.

С помощью файла конфигурации CONFIG.SYS можно расширять операционную систему и изменять некоторые параметры, влияющие на работу внешних устройств. Одно из важнейших свойств DOS состоит в возможности добавления новых внешних устройств и подключения специальных программ, обеспечивающих управление их работой.

Эти программы, называемые драйверами внешних устройств, можно включить в систему, перечислив их в файле CONFIG.SYS. Помимо этого в файле конфигурации можно указать, сколько файлов в системе может быть открыто одновременно, задать количество буферов для обменов с внешними накопителями и некоторые другие параметры.

Пример. Рассмотрим типичный вид файла CONFIG.SYS:

device = C : \ sys \ vdisk . sys 20 device = C : \ sys \ ansi . sys device = C : \ sys \ mouse . sys

В первой строке с помощью выражения BREAK=ON устанавливается режим, при котором пользователь будет иметь возможность прервать любую работающую программу при определенных условиях. Для этого дается команда прерывания, вызываемая одновременным нажатием управляющих клавиш Ctrl и Break. Работающая программа будет прервана, если эти клавиши оказываются нажатыми в момент выполнения операций ввода/вывода (включая печать на принтере, обмен с дисками и др.).

Во второй строке командой FILES=30 устанавливается, что количество одновременно открытых файлов может достигать 30.

Четыре следующие строки имеют одинаковый вид и содержат команды подключения к DOS дополнительных внешних устройств. В правой части каждого выражения, после знака равенства, задается имя файла, являющегося драйвером нового устройства:

Кроме указанных в примере команд, в файле конфигурирования можно установить нестандартное количество буферов для обмена информацией с дисковыми накопителями. Задание числа буферов делается с помощью выражения вида;

Еще одна возможность позволяет указывать имя файла, который будет играть роль нестандартного командного процессора (вместо стандартного файла COMMAND, СОМ). Такое указание осуществляется с помощью выражения вида:

Таким образом, с помощью файла конфигурирования CONFIG.SYS пользователь может задать собственные, нестандартные возможности, которые действуют в течение текущего сеанса работы.

Командные файлы

Роль командных файлов особая. Они могут содержать целую группу команд DOS или обращений к прикладным программам, которые выполняются последовательно или в более сложном порядке. Командный файл, в отличие от исполняемых файлов остальных двух типов, содержит не машинный код программы, а текст, который интерпретируется командным процессором DOS. Таким образом, по форме это обычный текстовый файл. Его строки могут представлять собой: встроенные команды DOS, обращения к исполняемым программам, вызовы других командных файлов, специальные команды для управления выводом на экран, специальные команды для организации ветвлений и циклов, метки.

Все эти конструкции (за исключением меток) могут ие только фигурировать в командных файлах, но и просто вводиться пользователем с клавиатуры. Однако в практической работе лишь команды первых трех типов вводятся пользователем, а остальные конструкции, включая метки, служат главным образом для создания нетривиальных командных файлов.

Рассмотрим несколько простых примеров применения командных файлов.

Пример 1. Допустим, наша регулярная работа осуществляется в каталоге WORK, но время от времени мы хотим переходить в каталог GRAPH, запускать там графический пакет VICONT, а по окончании работы с этой программой возвращаться в каталог WORK. Последовательность команд при этом должна быть следующей:

Пример 2. Допустим, мы хотим предельно сократить число манипуляций для создания необходимой рабочей обстановки при запуске системы. Мы можем заставить DOS автоматически провести всю необходимую подготовку операционной среды с помощью командного файла следующего вида;

Использование команд ECHO, PAUSE и REM полезно лишь в командных файлах; вводить их с клавиатуры для непосредственного исполнения не имеет особого смысла. Есть и другие команды, предназначенные главным образом для использования в командных файлах. К ним относятся:

Для пояснения этой возможности обратимся еще раз к первому примеру. Допустим, нам хотелось бы применять одну и ту же последовательность команд, приведенную в примере 1, для запуска разных подсистем. Тогда можно видоизменить приведенный выше текст файла V. ВАТ, заменив имя каталога GRAPH и имя вызываемой программы VICONT формальными параметрами. Командный файл при этом приобретает вид:

Символы %1 и %2 обозначают формальные параметры, вместо которых при обращении к файлу V.ВАТ будут подставлены в текстовом виде фактические параметры, указанные в командной строке. Обращение к V.ВАТ может иметь вид:

Строки graph и vicont займут место соответственно параметров %1 и %2, в результате чего получится точно такой же текст, как и в примере 1. Однако новый командный файл, в отличие от прежнего, можно использовать для запуска других подсистем, например:

В первом случае из каталога SS будет вызвана программа symph, во втором случае из каталога WW вызывается система word.

Развитые командные файлы

Рассмотрим действие специальных команд, позволяющих управлять интерпретацией командных файлов. К ним относятся команды GOTO, IF, FOR, SHIFT, а также команда EXIT, играющая особую роль при рекурсивном вызове командных файлов.

Команда GOTO.

Позволяет передавать управление на метку и тем самым осуществлять повторное исполнение участков командного файла или, наоборот, обходить некоторые участки (что обычно имеет смысл в сочетании с командой ветвления IF).

Пример 1. Пусть командный файл PR.ВАТ имеет вид

Тогда начинается циклическое исполнение файла PR. ВАТ с фактическим параметром SPECTR.DOC. На принтер начнут выдаваться одна за другой копии этого текстового файла, прерываемые паузами после каждой очередной копии. Пользователь может прервать исполнение этого командного файла, нажав одновременно клавиши Ctrl и С.

Команда IF.

Позволяет проверять условие и выполнять команду в зависимости от результата его проверки. Что можно задавать в качестве условия? Для этого имеется три возможности:

1. Проверка кода завершения программы, сработавшей перед оператором IF. При этом в начале оператора IF используется конструкция следующего вида:

Любая программа может с помощью специального прерывания DOS выработать в момент своего окончания так называемый код завершения. Этот код сравнивается с числом N. Условие считается выполненным (истинным), если выработанный код завершения равен или больше указанного числа N.

2. Проверка наличия файла в каталоге. В этом случае начало оператора IF имеет вид;

В данном случав команда IF проверяет, действительно ли существует файл с заданным именем в указанном или в текущем каталоге. При обнаружении файла условие считается выполненным.

3. Сравнение двух строк, которые, в частности, могут задаваться через формальные параметры. Соответствующая конструкция может иметь вид;

Здесь значение формального параметра % (N) сопоставля,ется с конкретной строкой. При абсолютном совпадении двух строк условие считается выполненным.

Команда FOR.

Пример 2. Пусть имеется необходимость систематически копировать файлы PROG.PAS, PROG.OBJ и PROG.EXE из рабочего каталога на диск D: . С этой целью можно в соответствующем командном файле дать команду:

Здесь формальный параметр %%А последовательно сопоставляется со списком фактических параметров в круглых скобках и используется командой COPY, которая в данном случае выполняется 3 раза подряд.

Подставив в качестве второго параметра команды COPY вместо имени D: еще один формальный параметр %1, можно будет менять назначение копирования, задавая его с терминала.

Команда SHIFT.

Однократное применения команды SHIFT дает следующее соответствие:

Двукратное применение вызывает дальнейший сдвиг:

Если присвоить этому файлу имя D.BAT и вызвать его с произвольным числом аргументов:

Команда SHIFT используется также в тех случаях, когда число параметров командного файла превышает 9, так как в командном файле можно адресоваться к формальным параметрам только от %0 до %9.

Файл автозапуска AUTOEXEC.BAT

С точки зрения содержащейся в файле AUTOEXEC.BAT информации он является обычным командным файлом. Однако он играет особую роль, потому что при начальном запуске и инициализации системы, вслед за обработкой CONFIG.SYS, операционная система пытается найти в корневом каталоге системного диска файл AUTOEXEC.BAT н начинает его обработку автоматически, без какого-либо побуждения со стороны пользователя. В файл AUTOEXEC.BAT удобно занести различные команды, которые осуществят всю необходимую настройку системы.

Рассмотрим следующий файл AUTOEXEC.BAT:

Начиная со второй строки этого файла, стоят команды, обеспечивающие создание определенной операционной обстановки. Рассмотрим их по порядку.

1. Команда PATH устанавливает альтернативные маршруты для поиска исполняемых файлов. В примере один из маршрутов указывает на системный подкаталог с именем ЕХЕ. Кроме того, как возможное место размещения используемых программ указан корневой каталог диска С: .

В ряде случаев прикладные программы используют каталоги с именем BIN. В этом случае именно его имя полезно указать в команде PATH.

Для пользователей, часто обращающихся к какой-либо одной системе программирования или прикладной системе (например, Turbo Pascal), может оказаться полезным включение в число альтернативных маршрутов имени соответствующего подкаталога.

В рассматриваемом примере строка $p$g в качестве параметра команды PROMPT обеспечивает выдачу приглашения, которое используется наиболее часто. Оно содержит имя текущего каталога и имеет, например, такой вид:

Командой PROMPT можно выдавать и другие информационные параметры, например, имя пользователя, название организации и др.

В рассматриваемом примере команда SET вводит имя АВС с параметром С:\АВС, которое является указанием текстовому процессору, откуда следует брать вспомогательные файлы (шрифты, драйверы и др.).

Рассмотренные выше команды PATH и PROMPT также кодифицируют обстановку, но в отношении фиксированных имен (а именно, устанавливают параметры для имен PATH и PROMPT). Команда SET позволяет делать то же самое для произвольных имен, и ее, таким образом, можно рассматривать как обобщение вышерассмотренных команд.

Команда SET может использоваться, например, для указания каталога, ориентированного на обслуживание конкретной прикладной программы.

Управление внешними устройствами

Для получения подробных сведений о методике применения команды Mode в конкретных случаях следует обратиться к справочной документации по DOS.

Читайте также: