Фигурнов В. Э. Ф49 ibm pc для пользователя. Изд. 7-е, перераб и доп

Вид материалаКнига

Содержание


Глава 41. Оптимизация использования памяти 469
Часть 8. Настройка конфигурации MS DOS
Глава 41. Оптимизация использования памяти
Часть 8. Настройка конфигурации MS DOS
Подобный материал:
1   ...   59   60   61   62   63   64   65   66   ...   87
Глава 41


Оптимизация использования памяти


В этой главе мы расскажем о том, как с помощью программы MemMaker настроить

файлы конфигурации DOS так, чтобы наиболее эффективно использовать верхнюю

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

прикладных программ.


Перед чтением данной главы полезно ознакомиться с главой 39, где описывается ис-

пользование оперативной памяти в DOS.


41.1. Программы'


Назначения.


Способ p;-i04ii..i


Диспетчеры памяти (EMM386, QEMM, 386МАХ и др.) позволяют загружать рези-

дентные программы и драйверы в верхнюю память компьютера, позволяя тем самым

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

так-то просто использовать наилучшим образом. Ведь доступная для размещения про-

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

состоит из нескольких фрагментов (обычно называемых регионами), расположенных в

"дырах" между адресами памяти, используемыми BIOS и контроллерами. Так что для

эффективного использования верхней памяти необходимо наилучшим образом решить

задачу "укладки" программ и драйверов в регионы верхней памяти, то есть определить

для каждой резидентной программы или драйвера, в какой регион верхней памяти

лучше ее поместить (или, может быть, оставить в обычной памяти), чтобы в результате

разместить в верхней памяти программы и драйверы наибольшего суммарного размера

(это обеспечивает высвобождение максимального количества обычно памяти).


Ясно, что сам пользователь не в состоянии решать подобные комбинаторные задачи

(скажем, методом проб и ошибок). И для этого были созданы специальные программы

Ч оптимизаторы использования памяти: Optimize в диспетчере QEMM фирмы

Quarterdesk, Maximize в диспетчере 386МАХ фирмы Qualitas и т.д. В MS DOS 6.0

тоже был включен оптимизатор MemMaker, который мы и рассмотрим ниже.


Оптимизаторы выявляют потребности используемых драйверов и резидентных про-

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

эти программы и драйверы в регионах верхней памяти, и вносят все необходимые из-

менения в файлы конфигурации DOS Ч CONFIG.SYS и AUTOEXEC.BAT. Этот про-

цесс требует минимальных усилий от пользователя и выполняется за пару минут.


'Х...Х,^".,.'1 Если несколько более вдаваться в детали, то процесс оптимизации выполняет-

ся следующим образом.


1. Оптимизатор запрашивает у пользователя параметры оптимизации, после чего вносит

изменения в файлы CONFIG.SYS и AUTOEXEC.BAT. Эти изменения сводятся к тому.

чтобы все упомянутые в файлах CONFIG.SYS и AUTOEXEC.BAT резидентные програм-

мы или драйверы запускались не непосредственно, а посредством специального драйве-

ра, выявляющего их потребности в оперативной памяти. Для оптимизатора MemMaker

эта программа называется SIZER.EXE. Кроме того, вставляются и другие команды, на-

пример, команда запуска самого оптимизатора.


2. Оптимизатор перезагружает компьютер. В процессе загрузки происходит сбор информа-

ции о потребностях используемых драйверов и резидентных программ в оперативной

памяти, а затем автоматически вызывается оптимизатор.


3. Оптимизатор анализирует собранную информацию и определяет, как наилучшим обра-

зом можно разместить резидентные программы и драйверы врегионах верхней памяти.

После этого оптимизатор вносит изменения в файлы CONFIG.SYS и AUTOEXEC.BAT.

реализующие оптимальное размещение резидентных программ и драйверов в регионах

верхней памяти, удаляет из этих файлов вызовы драйвера, служащего для сбора инфор-

мации о потребностях в оперативной памяти, и снова перезагружает компьютер.


Глава 41. Оптимизация использования памяти 467


1 4. Если процесс перезагрузки происходит благополучно (компьютер не зависает), то авто-

Г матически вызывается оптимизатор. Как правило, он спрашивает у пользователя, рабо-

1 тает ли компьютер нормально. Если пользователь отвечает утвердительно, то оптимиза-

i тор удаляет из файлов CONFIG.SYS и AUTOEXEC.BAT все свои служебные команды,

после чего процесс оптимизации заканчивается.


41.2. Возможное":' Х~Хптч^ИJaiХo,:'a MemMaker


lХ^,Уi^'.^^ ^,..'^Л iVi^!iiiViCll\Cl


Программа MemMaker может выполнять оптимизацию использования памяти на ком-

пьютерах с процессором Intel-80386 или старше, работающих под управлением MS

DOS версии 6.0 или последующих. MemMaker автоматически вставляет (при необхо-

димости) в файл CONFIG.SYS команды запуска драйверов расширенной памяти

HIMEM.SYS и верхней памяти EMM386.ЕХЕ, а также команду DOS=UMB, так что

пользователю беспокоиться о наличии этих команд не надо. MemMaker может автома-

тически удалить команды для запуска других диспетчеров памяти (QEMM, 386МАХ

или NETROOM) и установить вместо них драйверы HIMEM.SYS и EMM386.ЕХЕ.

MemMaker может работать в режиме быстрой оптимизации, в котором пользователю

по ходу оптимизации задается всего два вопроса. MemMaker позволяет отменить ре-

зультаты последнего сеанса оптимизации, если пользователь оказался недоволен его

результатами (для этого надо ввести команду MEMMAKER /UNDO, см. ниже).


41.3. Подготовка к оптимизации


Перед выполнением оптимизации желательно выполнить следующие действия:


Х просмотреть файлы CONFIG.SYS и AUTOEXEC.BAT на предмет того, не содержит-

ся ли там каких-либо команд для вызова ненужных резидентных программ или

драйверов. Если они имеются, надо их удалить или превратить в комментарии;


Х включить все используемые Вами внешние устройства, доступ к которым осущест-

вляется через резидентные программы или драйверы. Дело в том, что многие рези-

дентные программы и драйверы удаляют себя из памяти, если не находят уст-

ройств, для доступа к которым они предназначены;


Х выйти из Windows, Shell, QuarterDesk или иных программ-оболочек. Из Norton

Commander можно не выходить.


41.4. Выполнение огиимиза^лии


Bbl30LiilPOllJijMM!il Д^ выполнения оптимизации оперативной памяти следует запустить оптимизатор


командой:

MEMMAKER


После этого работа с оптимизатором выполняется следующим образом (на любом эта-

пе можно работу прервать, нажав (ID).


1. MemMaker выведет экран с описанием назначения программы ("Welcome to

MemMaker"). Для продолжения нажмите CEnterI.


Быстодя или 2- MemMaker выведет экран с описанием способов оптимизации. Для выбора между

этими способами нажимайте клавишу (Пробел):


^ 'Ч^Ч


на с гра ива ема я

огиимизсшия


Express Setup Ч быстрая оптимизация;

Custom Setup Ч оптимизация с настройкой пользователем.


Как правило, оптимизацию с настройкой пользователем {Custom Setup) следует

выбирать, лишь если Вы знаете о том, что какая-либо резидентная программа или

драйвер не работает в верхней памяти, если у Вас имеется монитор EGA или VGA

(а не SuperVGA), или если Вы уже проводили быструю оптимизацию и не удовле-

творены ее результатами. В остальных случаях можно выбирать быструю оптими-

зацию {Express Setup).


468 Часть 8. Настройка конфигурации MS DOS


Выбрав режим оптимизации, нажмите клавишу (Enter).


' Х"''^ '/.'^л""


;-i<'4i)KU^i.1MU(,ih 3. MemMaker выведет экран с запросом о том, используете ли Вы программы, тре-

бующие EMS-памяти ("Do you use any programs that need expanded memory

(EMS)"). Нажатиями клавиши (Пробел] выберите ответ (Yes Ч да, No Ч нет), и

нажмите клавишу (Enter). Если Вы не знаете точно, что какая-либо из используе-

мых Вами программ требует наличия EMS-памяти, лучше выберите ответ No.


4-6. Эти шаги осуществляются только при оптимизации с настройкой пользователем

(Custom Setup). Мы рассмотрим их позже.


7, Если MemMaker обнаруживает версию Windows (при быстрой оптимизации это

первая встреченная на дисках версия Windows, а при оптимизации с настройкой

пользователем Ч версия в указанном пользователем каталоге), и это Windows 3.0,

то MemMaker выводит просьбу разрешить сделать изменения в файле

SYSTEM.INI: "Do you want MemMaker to change your SYSTEM.INI file?". Если Вы

ответите Yes, то MemMaker сделает нужные изменения, а исходный вариант фай-

ла SYSTEM.INI сохранит под именем SYSTEM.UMB. При ответе No предложен-

ные изменения надо сделать самостоятельно. Для Windows 3.1 или 3.11 или

Windows for Workgroups, как показывает практика, никаких изменений в файле

SYSTEM.INI не делается и запросов не выдается.


C.u4i>Lnoiil-'i(.- и ^- MemMaker сообщает, что будет перезагружать компьютер ("MemMaker will now

,,,..^,,.., ,. i to restart your computer") и просит вынуть дискеты из дисководов. Сделайте это и

'"'' Х">'>'"''Х нажмите клавишу (Enter).


i ".()(Х{) ii)t'in)n,-iHi-1i-1 9- MemMaker перезагрузит компьютер, соберет в ходе загрузки сведения о требова-

ниях к памяти драйверов и резидентных программ и на основе этой информации


''"' проанализирует возможные варианты оптимизации использования памяти и выбе-

рет из них наилучшую (по его мнению). При этом на экране промелькнет сообще-

ние: "MemMaker is determining the optimum memory configuration for your com-

puter and has considered ... configurations)".


Crioftii'f'ulic о ^0- Затем MemMaker сообщит, что должен опять перезагрузить компьютер, чтобы

проверить новую конфигурацию ("MemMaker will now to restart your computer to


Х'". "f^^i ny.int, ^^ ^g ^^ memory configuration"). Выньте дискеты из дисководов и нажмите

клавишу (Enter).


К(1НфИ1 ур,1 Ц1'Ч-1


П!:)()!н"1)кн повои ^- MemMaker снова перезагрузит компьютер и спросит, работает ли операционная

система нормально ("Does your system appear to be working properly")^ Если при

загрузке Вы не заметили ничего необычного, нажмите клавишу (Enter). Если за-

метили, выберите нажатиями клавиши (Пробел) ответ No и нажмите клавишу

(Enter). Тогда MemMaker удалит сделанные изменения и восстановит прежнее со-

стояние файлов конфигурации.


i '.' lХ'Л.W:^,^f {И1;


t)("r/in,r;t4dy 12- Если Вы положительно ответили на предыдущий вопрос, MemMaker выведет от-

чет о результатах оптимизации в виде таблицы:


Before After


Memory type MemMaker MemMaker Change


Free conventional memory: 593 616 595 024 1 408


Upper memory:


Used by programs 48 304 49 712 1 408

Reserved for Windows О О О

Reserved for EMS О 65 536 65 536

Free 93 808 26 912


Expanded memory: Disabled


В этой таблице приведены размеры различных областей до оптимизации (столбец

Before MemMaker), после оптимизации (столбец After MemMaker), а также измене-

ние этих размеров (столбец Change). Самая важная из этих областей Ч обычная

память, доступная программам (строка Free conventional inemory). По изменению

размера этой области можно судить об эффективности оптимизации. Ниже сооб-

щаются размеры различных областей верхней памяти: используемой драйверами и

резидентными программами (Used by programs), зарезервированной для Windows

(Reserved for Windows), зарезервированной для страницы обмена с EMS (Reserved

for EMS) и свободной верхней памяти (Free). В последней строке таблицы

(Expanded inemory) сообщается, доступна или нет EMS-память до и после оптими-

зации: Enabled Ч доступна, Disabled Ч недоступна.


^ Глава 41. Оптимизация использования памяти 469


Нажмите клавишу (Enter"), и Вы окончите работу с MemMaker.


3.iMf"i:inn!; Если MoiTiMaker лишь ухудшил эффективность использования верхней памяти

(это возможно, если файлы CONFlu.^YS и AUIOEXEC.BAT уже были настроены каким-

либо более мощным оптимизатором другой фирмы), то он сообщает об этом: "Your com-

puter's rnemorv was optimally configured belore you ran MemMaker" (Память компьютера

была оптимально конфигурирована до запуска MemMaker). В этом случае Вы можете либо

вернуться к прежней конфигурации (нажав [rntci^), или оставить конфигурацию, только

что созданную программой MemMaker (нажав C^J).


D^


Окончание этой главы при первом чтении можно пропустить


41.5. Оптимизация с настройкой пользователем


Процесс оптимизации с настройкой пользователем {Custom Setup) включает дополни-

тельные этапы (п. 4-6 ниже), в ходе которых пользователь может задать различные

параметры оптимизации.


Угтянппкч ^' MemMaker выводит экран с запросом дополнительных режимов ("Advanced Op-

tions"). Вы можете перемещаться по этим режимам клавишами (1] и (Т) (значение


дополни юльных текущего режима выводится желтым цветом или повышенной яркостью), и изме-

режимов нять значения режимов нажатиями клавиши [Пробел^ (Yes Ч да, No Ч нет):


оптимизации


Specify which drivers and TSRs to include in optimization? (Указывать, какие

драйверы и резидентные программы включать в оптимизацию?). Выберите

значение режима Yes, если какая-либо резидентная программа или драйвер не

работает в верхней памяти. Тогда MemMaker будет запрашивать разрешения

включения в процесс оптимизации каждой резидентной программы или драй-

вера из файлов CONFIG.SYS и AUTOEXEC.BAT. Иначе выберите ответ No,


Scan the upper memory area aggressively? (Выполнять интенсивное сканирование

верхней памяти?) Ч при значении Yes этого режима MemMaker будет искать

свободные блоки верхней памяти не только в обычном диапазоне адресов

(C6000hЧEFFFFh), но также и в диапазоне адресов FOOOOhЧF7FFFh. Кроме

того, MemMaker добавит параметр HIGHSCAN в команду вызова драйвера

EMM386.ЕХЕ, что заставит драйвер EMM386.ЕХЕ также использовать блоки

верхней памяти в диапазоне FOOOOhЧF7FFFh. На некоторых компьютерах при

этом компьютер начинает работать нестабильно или "зависает". Поэтому

обычно для данного режима следует указывать значение No',


Optimize upper memory for use with Windows? (Оптимизировать верхнюю память

для работы с Windows?) Ч при значении Yes данного режима MemMaker ре-

зервирует некоторые участки верхней памяти для Windows с помощью пара-

метра WIN драйвера EMM386.ЕХЕ, добиваясь того, чтобы DOS-программам

при запуске из-под Windows было доступно максимальное количество обычной

памяти. Однако количество обычной памяти, доступной при работе вне среды

Windows, при этом может уменьшиться. Как правило, следует использовать

значение данного режима Л/о:


Use monochrome region (ВОООЧB7FF) for running programs? (Использовать об-

ласть монохромной памяти для работы программ?) Ч при значении Yes дан-

ного режима MemMaker разрешает использовать для загрузки программ и

драйверов адреса памяти ВООООЧB7FFF (32 Кбайта), вставляя в команду вы-

зова драйвера EMM386.ЕХЕ параметр /1=8000-B7FF. Эти адреса памяти ис-

пользуются монохромными видеоконтроллерами и видеоконтроллерами

SuperVGA. Если Вы имеете компьютер с видеоконтроллером CGA, EGA или

VGA (это, по-видимому, достаточно старый компьютер), то Вы сможете осво-

бодить 32 Кбайта верхней памяти. В остальных случаях надо выбирать значе-

ние данного режима No',


Keep current EMM386 memory exclusions and inclusions? (Сохранять текущие ис-

ключения и включения адресов памяти для EMM386?) Ч при задании значе-

ния No данного режима MemMaker исключает из команды вызова драйвера

EMM386.ЕХЕ параметры 1= и Х=, задающие включения и исключения участ-

ков памяти для использования драйвером EMM386.ЕХЕ. Обычно драйвер


^ Часть 8. Настройка конфигурации MS DOS


Выбор Kij li)fl01 a

WllKiuwS


Bhibop программ

и драйнорои,

учас1вую1цих

и оптимизации


ЕММ386.ЕХЕ сам в состоянии разобраться, какие участки верхней памяти

можно использовать, а какие нельзя (поскольку они уже используются BIOS

или контроллерами). Однако иногда Вы можете захотеть вручную указать

драйверу ЕММ386.ЕХЕ с помощью параметров 1= и Х=, какие участки памяти

он должен или не должен использовать. Чтобы сохранять эти указания, сле-

дует выбрать значение Yes данного режима,

Move Extended BIOS Data Area from conventional to upper memory? (Перемещать

расширенную область параметров BIOS из обычной в верхнюю память?) Ч

при значении No данного режима MernMaker вставляет в команду вызова

драйвера ЕММ386.ЕХЕ параметр NOHOVEEXDBA, что запрещает перемещение в

верхнюю память расширенной области параметров BIOS (EBDA). Это может

быть необходимо в тех редких случаях, когда такое перемещение вызывает

сбои в работе компьютера. Как правило, значение данного режима должно

быть Yes, при этом освобождается на 1 Кбайт обычной памяти больше.


Установив значения всех режимов, нажмите клавишу (Enter].


Если MemMaker обнаруживает на диске какую-либо версию Windows, он выводит

сообщение о каталоге, в котором находится эта версия Windows (MemMaker found

a copy of Windows in the following directory). Если это та версия Windows, кото-

рую Вы используете, нажмите клавишу ГЕпТ^). Иначе укажите полное имя катало-

га, в котором находится та версия Windows, с которой Вы работаете, и нажмите

клавишу CbiTeF).


Если в шаге 4 Вы выбрали значение Yes режима Specify which drivers and TSRs to

include in optimization, то MemMaker будет выводить на экран строки файлов

CONFIG.SYS и AUTOEXEC.BAT, содержащие команды вызова драйверов и рези-

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

включать драйвер или программу в процесс оптимизации ("Include this driver or

program in the optimization process?"). Нажатиями клавиши Гпробел ] выберите ответ

{Yes Ч да, No Ч нет), и нажмите клавишу (ТпТеТ). Как правило, ответ No надо вы-

бирать для программ и драйверов, которые не могут работать в верхней памяти

(что обнаружено экспериментально или утверждается в документации). В осталь-

ных случаях можно выбирать ответ Yes.


Замечанием Чтобы MemMaker никогда не включал программу или драйвер в процесс оп-

тимизации, следует записать имя программы или драйвера в файл MEMMAKER.INF. Этот

файл находится там же, где программа MemMaker (в каталоге с файлами MS DOS). До-

полнительную информацию см. в самом файле MEMMAKER.INF.


6.


41.6. Отмена результатов оптимизации


Если результаты последнего сеанса оптимизации Вас не устраивают, можно вернуться

к той конфигурации, которая была до выполнения этого сеанса оптимизации. Для этого

надо ввести команду MEMMAKER /UNDO .


Можно отменить результаты оптимизации и вручную. MemMaker сохраняет исходные

варианты файлов CONFIG.SYS и AUTOEXEC.BAT под именами CONFIG.UMB и

AUTOEXEC.UMB в каталоге с файлами MemMaker. Если в файл SYSTEM.INI были

внесены изменения (это делается в Windows 3.0), то исходный вариант этого файла

сохраняется (также в каталоге с файлами MemMaker) под именем SYSTEM.UMB.


Замечание. Если Вы выполняли не один сеанс оптимизации, а несколько (не отменяя ре-

зультаты предыдущего сеанса перед выполнением следующего), то исходный вариант кон-

фигурации так восстановить не удастся Ч MernMaker позволяет восстановить только ту

конфигурацию, которая была перед последним сеансом оптимизации. Так что делайте копии

файлов CONFIG.SYS и AUTOEXEC.BAT сами!


4/.7. Прекращение и возобновление оптимизации


Прекращение

оптимизации


При ответе на любой вопрос MemMaker (не считая предложений нажать (Enter) для

перезагрузки компьютера), Вы можете нажать клавишу СЕЗ) для выхода из программы.

Это может быть необходимо, например, если надо экстренно закончить работу с ком-


^ Глава 41. Оптимизация использования памяти


Возобновление

оптимизации


пьютером. MemMaker выведет вопрос о том, хотите ли Вы действительно выйти или

надо продолжить работу ("Continue or Exit"). Вы можете нажатиями клавиши (Пробел)

выбрать один из следующих ответов и нажать (Enter]:


Continue Ч продолжить оптимизацию;


Exit and undo changes Ч выйти и отменить сделанные изменения. При этом Mem-

Maker может вывести запрос на подтверждение выхода (это происходит, если он

уже сделал изменения в файлах CONFIG.SYS и AUTOEXEC.BAT), а затем Ч со-

общение о перезагрузке компьютера. В ответ на них надо нажимать клавишу

(Enter~).


Exit and keep changes Ч выйти, сохранив сделанные изменения. В этом случае при

следующем запуске MemMaker Вам будет предложено либо снова начать оптими-

зацию (Restart Optimization), либо отменить сделанные изменения (Undo

Changes).


А когда на экране компьютера выведено предложение нажать (Enter) для перезагрузки

компьютера, Вы можете просто выключить компьютер, если Вам необходимо закончить

работу. После включения компьютера процесс оптимизации будет продолжен.


Если процесс оптимизации был прерван (например, нажатием клавиши (Ц) с выбором

варианта ответа Exit and keep changes, при выключении или зависании компьютера и

т.д.), то при следующем вызове MemMaker обычно обнаруживает это и предлагает

выбрать возобновление оптимизации или отмену изменений (Restart optimization or

undo changes?). Вы можете выбрать нажатиями клавиши (Пробел) выбрать один из

следующих ответов и нажать (Enter):


Restart Optimization Ч возобновить прерванный процесс оптимизации;

Undo Changes Ч выйти и отменить сделанные изменения. При этом MemMaker выве-

дет запрос на восстановление исходных файлов CONFIG.SYS и AUTOEXEC.BAT,

а затем Ч сообщение о перезагрузке компьютера. В ответ на них надо нажимать

клавишу [Enter).


41.8. Полезные советы


Параметр

/TESTMEM.-OFF


Параметр

FPAME=NONE


Изменение

порядка вызова

программ

и драйверов


Приведем несколько советов по выполнению оптимизации и улучшению ее результа-

тов.


Если команду запуска драйвера расширенной памяти HIMEM.SYS в файл CON-

FIG.SYS вставил МетМакег, то в этой команде не будет параметра /TESTMEM:OFF, от-

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

вставить этот параметр, чтобы ускорить процесс начальной загрузки.


Если Вы работаете с DOS-программами, использующими EMS-память, но не лазящими

непосредственно в EMS-OKHO, то Вы можете высвободить 64 Кбайта верхней памяти,

задав параметр FRAHE=NONE драйвера EMM386.ЕХЕ. К сожалению, MemMaker не умеет

вставлять этот параметр и даже интерпретирует его (если он уже имеется в команде

вызова драйвера EMM386.ЕХЕ) как запрет на использование EMS-памяти. Поэтому в

таких случаях надо при оптимизации отвечать No на вопрос о наличии программ, ра-

ботающих с EMS-памятью, а по окончании оптимизации Ч заменить в файле CON-

FIG.SYS в команде вызова драйвера EMM386.ЕХЕ параметр EMS на параметры RAM

FRAME=NONE.


Если какие-то резидентные программы или драйверы после оптимизации не загружа-

ются в верхнюю память, а свободной верхней памяти вроде бы достаточно, то это мо-

жет быть вызвано тем, что программа или драйвер требует в момент загрузки больше

памяти, а потом часть памяти освобождает. Так поступают многие программы и драй-

веры. Например, драйвер экрана и клавиатуры KEYRUS требует при загрузке 46

Кбайт, но затем он выкидывает из памяти все ненужные функции, оставляя в памяти

чуть более 11 Кбайт. Но если этот драйвер загружается последним, то он может не

загрузиться в верхнюю память, если там к этому моменту осталось, скажем, 30 Кбайт.

Выход один Ч переставить команду вызова этого драйвера раньше.


Чтобы выявить такие ситуации, можно просмотреть файл MEMMAKER .STS (он находится в

каталоге с файлами MemMaker, то есть, как правило, в каталоге с файлами MS DOS).

В этом файле для каждой программы и драйвера сообщается максимальный и конеч-

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


472


^ Часть 8. Настройка конфигурации MS DOS


Использование

области памяти

монохромного

дисплея


Файлы CONFIG.SYS

со стартовыми меню


памяти выводится в строке MaxSlze=wc^o. Следует записать эти величины и переста-

вить в файлах CONFIG.SYS и AUTOEXEC.BAT строки вызова драйверов и резидент-

ных программ (насколько это возможно) в порядке убывания величины MaxSize. Здесь

слова "насколько это возможно" означают, что многие программы и драйверы должны

запускаться в определенном порядке, скажем, программа SMARTDRV для кэширова-

ния дисков Ч после программы MSCDEX, обеспечивающей доступ к компакт-дискам.

Этот порядок нарушаться, естественно, не должен.


Вы можете использовать участок верхней памяти, отведенный для монохромного дис-

плея (32 Кбайта по адресу BOOOO-B7FFF) даже при наличии видеоконтроллера

SuperVGA, если Вы используете режимы SuperVGA только при работе в Windows. Это

достаточно типичная ситуация, так как при работе в среде DOS подавляющее боль-

шинство программ использует только видеорежимы VGA. Для этого надо выполнить

следующие действия:


а) в файле настройки Windows SYSTEM. INI (он находится в каталоге с файлами

Windows) найти секцию с заголовком [386Enh] и вставить туда команду DEVICE, вы-

зывающую драйвер MONOUMB.386, поставляемый в составе MS DOS. Например, если

файлы MS DOS находятся в каталоге C:\EXE\MSDOS, то в секцию [386Enh]

вставить строку DEVICE=C:\EXE\MSDOS\MONOUMB.386:

б) сохранить файл SYSTEM.INI ;

в) запустить MemMaker и выбрать вариант оптимизации с настройкой пользователем


(Custom Setup),


г) для режима "Use monochrome region (BOOOЧB7FF) for running programs?" задать

значение Yes.


Файлы CONFIG.SYS, включающие стартовые меню (см. главу 40), оптимизируются

весьма плохо. Точнее, при оптимизации одной ветви файла CONFIG.SYS (то есть ко-

манд, соответствующих одному варианту выбора в стартовом меню), остальные ветви

разоптимизируются. Поэтому оптимизировать файлы CONFIG.SYS, включающие стар-

товые меню, надо следующим образом.


а) сохранить копии файлов CONFIG.SYS и AUTOEXEC.BAT: вам потребуется провес-

ти несколько сеансов оптимизации, a MemMaker позволяет отменить результаты

лишь последнего сеанса;


б) если в блоке [COMMON] файла CONFIG.SYS имеются команды запуска драйверов

(кроме драйверов HIMEM.SYS и EMM386.ЕХЕ), то их надо скопировать в блоки,

соответствующие вариантам выбора в стартовом меню. А из блока [COMMON] эти

команды надо удалить. Причина проста: при разных вариантах выбора в стартовом

меню оптимальное расположение этих драйверов в памяти может быть разным;


в) если в блоках файла CONFIG.SYS, вставляемых по команде INCLUDE, есть коман-

ды запуска драйверов (кроме драйверов HIMEM.SYS и EMM386.ЕХЕ), их надо

скопировать в те места, в которых находятся команды INCLUDE, а из прежнего

места Ч убрать. Причина Ч та же, что и в п. (б):


г) оптимизацию каждой ветви файла CONFIG.SYS надо выполнять по отдельности.

Стоит сказать, что MemMaker оптимизирует ту ветвь файла CONFIG.SYS, которая

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

(см. выше шаг 9 в пункте "Выполнение оптимизации"). Перед оптимизацией каж-

дой ветви надо превратить в комментарии команды вызова драйверов, содержащих-

ся в других ветвях файла CONFIG.SYS, если эти ветви уже были оптимизированы

(иначе MemMaker уничтожит оптимизационные настройки в этих командах);


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

надо восстановить из комментариев те команды файла CONFIG.SYS, которые были

превращены в комментарии в соответствии с пунктом (г).


41.9. Возможные проблемы


В подавляющем большинстве случаев оптимизация использования памяти не вызывает

каких-либо проблем. Однако встречаются некоторые программы и драйверы (как пра-

вило, достаточно древние), которые не работают в верхней памяти. Кроме того, неко-

торые старые контроллеры дисков не могут выполнять операции ввода-вывода с верх-

ней памятью. Бывают и другие причины, в том числе не связанные непосредственно с

оптимизацией. Некоторые их этих причин мы рассмотрим ниже.