G.5.9. Этап 8. Настройка других команд управления памятью и системным окружением.

Для управления памятью в файле Config.sys, кроме указанных выше директив, используются команды DOS, Shell и STACKS. Рассмотрим их предназначение.

Для загрузки операционной системы в блоки старшей памяти используется команда DOS в файле Config.sys. Ее формат:

DOS=<параметры>

Если указан параметр HIGH, то это означает, что DOS будет загружен в верхнюю память. Параметр UMB указывает, что DOS будет управлять блоками старшей памяти (UMB), которые будут доступны как самой DOS, так и прикладным программам.

Порядок следования параметров - любой. Строка DOS=HIGH должна быть установлена после загрузки драйвера Himem, а DOS=UMB - после загрузки драйвера Emm386. Если вместо этих драйверов загружен драйвер Quemm386.sys, то строка

DOS=HIGH,UMB

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

HMA is not avaliable

DOS loaded in low

(Верхняя память не доступна

DOS загружена в базовую память)

Также команда DOS=UMB должна появиться перед загрузкой любых драйверов командой DEVICEHIGH.

При интенсивной работе со стеком на компьютере с процессором i80286 и выше (например, при работе Windows 3.1x) используется команда STACKS. Ее формат:

STACKS=<число стеков>,<размер стека>

Для успешной работы Windows 3.1x лучше указать <число стеков> = 9 и <размер стека> = 512. По умолчанию выбрана следующая конфигурация;

STACKS=8,256

При использовании драйвера Quemm386 необходимо указать

STACKS=0,0

Дело в том, что этот драйвер поддерживает собственные стеки при работе в DOS.

Директива Shell указывает местоположение в системе командного процессора. Ее формат:

SHELL=<диск1>:\<путь1>\<имя файла1> [<диск2>:\<путь2>\<имя файла2>] [<ключи>]

где <диск1>:\<путь1>\<имя файла1> - полное имя файла с основным командным процессором;

<диск2>:\<путь2>\<имя файла2> - полное имя файла второго командного процессора;

Чаще всего директиву SHELL используют для того, чтобы увеличить размер системного окружения для командного процессора. Под переменными окружения понимают содержимое команд SET, PATH, Prompt и DIRCMD файла Autoexec.bat. По умолчанию размер системного окружения равен 256 байтам.

Часто размера этого окружения не хватает. Например, такие пакеты, как LaTeX, требуют большого числа переменных окружения, общая длина которых превосходит 256 байт. Для увеличения размера системного окружения необходимо указать в директиве SHELL файла Config.sys ключ /E: со значением, больше чем 256 байт. Из опыта работы с различными версиями операционных систем фирмы Microsoft автор рекомендует вставлять следующую строку в файл Config.sys:

SHELL=C:\Command.com /E:1024 /P

Этой строкой задается размер системного окружения, равный 1 Кбайту (1024 байта) и запрещено выгружать этот командный процессор командой EXIT. Размер системного окружения в 1 Кбайт автор считает достаточным для загрузки переменных окружения даже самых экзотических программ. В то же время размер базовой памяти уменьшается на 768 байт. Это обычно не сказывается на работе большинства программ, работающих под управлением MS-DOS или в режимах ее эмуляции операционных систем Microsoft Windows 95/98/NT.

Кроме Command.com, для операционных систем MS-DOS есть и другие командные оболочки. Примером может служить NDOS.COM, входящая в состав пакета Norton Utilites for DOS. Для ее использования в файле Config.sys необходимо ввести строку:

SHELL= < Диск > :\<путь>\Ndos.com ,

где <Диск>:\<путь> - местоположение файла Ndos.com.

Оболочка NDOS.COM менее требовательна к оперативной памяти, чем оболочка COMMAND.COM. О ее совместимости с другими программами, в частности, с Windows, автору ничего не известно.

 

Назад...   Вперед...

 

Гостевая книга Обсуждение в блоге. Отправить E-mail Автору проекта.

=== *** === *** === *** ===

В настоящее время проект закрыт (в версии 1.3.0 beta). Автор приносит извинения за прекрашение разработки.

Hosted by uCoz