Файл «CONFIG.SYS» содержит специальные команды, используемые при начальной загрузке операционной системы. Эти команды задают параметры MS-DOS, а также указывают, какие драйверы (то есть программы, расширяющие возможности ОС), необходимо загрузить в оперативную память. Изменяя значения конфигурационных параметров, используемых «Windows» по умолчанию, можно добиться более рационального распределения памяти.
Этот файл должен находиться в корневом каталоге загрузочного диска. Если Ваша «Windows» установлена на диске «C:» кликните здесь, чтобы увидеть свой файл «CONFIG.SYS», если на «D:», то здесь.
При начальной загрузке файл «CONFIG.SYS» выполняется первым. Если он отсутствует, то параметры MS-DOS будут установлены по умолчанию. При изменении этого файла соответствующие параметры конфигурации системы изменятся только после перезагрузки.
Редактировать файл следует при помощи «Блокнота» или другого простого текстового редактора (кроме «Microsoft Word» или другого текстового процессора, которые добавляют специальные теги (метки) форматирования текста).
Скачать файл, которым я пользуюсь сам, можно здесь.
Пример файла
Описание файла
Если Вы ставите в строке «DOS» — «NOAUTO», обязательно прописывайте загрузку драйверов: «HIMEM.SYS» и «IFSHLP.SYS»(см. ниже) — без них «Windows» не запустится, так как команда «DOS=NOAUTO» отключает загрузку и этого драйвера файловой системы.
Кстати, желательно использовать в конфигурационных файлах команды с окончаниями «HIGH», например, «DEVICEHIGH», «LOADHIGH», «INSTALLHIGH», «BUFFERSHIGH», «FCBSHIGH», «FILESHIGH», «LASTDRIVEHIGH», «STACKSHIGH» для загрузки в «верхнюю память» и освобождения базовой памяти.
Командная строка, содержащая «HIMEM.SYS», должна предшествовать всем строкам, в которых запускаются программы и драйверы, использующие дополнительную память (команды с окончаниями «HIGH»). Запуск «HIMEM.SYS» должен предшествовать запуску EMM386.EXE.
Если у вас больше 64 МВ оперативной памяти, не загружайте этот драйвер вообще, то есть удалите строку, где упоминается «EMM386.EXE» или «заремьте» её, написав перед ней «REM» (обратите внимание, что после этой команды обязательно должен стоять пробел), после чего эта строка будет считаться комментарием и игнорироваться при загрузке.
Кстати, если вы никогда не загружаете режим эмуляции MS-DOS, то можете выставить еще меньшие значения этих параметров, этот вариант расчитан на поддержку и зтого режима. Если же вы используете какую-нибудь устаревшую программу, которая может работать только из режима эмуляции MS-DOS, то Вам, возможно, придется изменить эти параметры, опять увеличив их значения, иначе некоторые из DOSовских программ не запустятся, или даже придётся включить поддержку устаревшей EMS-памяти, добавив параметр «RAM» к драйверу «EMM386». Например: «DEVICE=C:\WINDOWS\EMM386.EXE RAM VERBOSE», при этом, возможно, придется отказаться от драйвера CD-ROM и некоторых других DOSовских драйверов для максимального увеличения обьема базовой памяти — лучше всего это сделать, не меняя основные файлы конфигурации, а создав для этой программы свой PIF-файл, в котором и задать нужные значения.
Кстати, информацию об остальных параметрах смотрите в файлах: «MSDOSDRV.TXT» и «CONFIG.TXT». Лежат они в директории «Windows».
Если Ваша «Windows 98» установлена в папку: [C:\Windows], то для их просмотра в новом окне щёлкните здесь. Если в [D:\Windows] — здесь.
Дополнительные сведения о командах MS-DOS можно найти в справке [\Windows 98\tools\oldmsdos\help.com] на компакт-диске второго выпуска «Windows 98».
Обратите внимание
Если файл «CONFIG.SYS» в корневой директории диска «C:» отсутствует или он есть, но содержит ошибочные команды, «Windows» загружает по умолчанию, стандартный файл «CONFIG.SYS», который содержит такие строки:
а также эта конфигурация драйверов загружается, если в существующем файле «CONFIG.SYS» отсутствует строка «DOS=NOAUTO», при этом, если у вас уже записаны команды без окончаний «HIGH», то выполняться все равно будут команды с этими приставками, для использования старших адресов памяти (точнее говоря, «Windows» сама решает — использовать старшие адреса памяти или нет, и чаще всего окончания «HIGH» к командам добавляет). То же самое произойдёт, если Вы нажатием клавиши во время появления на экране сообщение «Now starting MS-DOS» запретите выполнение файла «CONFIG.SYS», после чего «MS-DOS» загрузится в стандартной конфигурации. Это пригодится вам, если в «CONFIG.SYS» окажется ошибка, не дающая системе загрузиться. Хотя и существует загрузочная дискета, таким способом можно решить многие проблемы, связанные с загрузкой.
Значения, задаваемые командами «BUFFERSHIGH», «FILESHIGH», «FCBSHIGH», «LASTDRIVEHIGH» и «STACKSHIGH» (или аналогичными без окончаний «HIGH»), а также драйвер «SETVER.EXE» нужны только приложениям MS-DOS, «Windows 98» эти параметры не требуются.
При наличии в корне системного диска файла «DBLSPACE.BIN» или «DRVSPACE.BIN»«Windows» загрузит соответствующий драйвер сжатых дисков, даже если вы не используете эту функцию, поэтому не забудьте удалить эти файлы.
Проверить, насколько эффективно распределяется память, можно с помощью команды «MEM /P/C», которую надо набрать в строке ввода (Меню «Пуск» —> Выполнить). Если в появившемся окне вы увидите примерно такие значения:
Largest executable program size=614032 (600k) Largest free upper memory block=0 (0K) MS-DOS is resident in the high memory area, то все в порядке.
Команда «MEM /D/P» более детально покажет использование памяти.
Иногда нужно выделить больше памяти под переменные окружения (например, если Вы получаете сообщение «Out of environment space» при запуске приложений), в этом случае пропишите строку:
«SHELL=C:\COMMAND.COM /P /E:1024».
Реклама
Анекдот
— Ты где эту книгу откопал, в Ленинке? — Не-а, в Мошонке отрыл, оттуда и скачал.
Статьи
Скачать основные материалы моего сайта одним файлом теперь можно здесь.
Добавлена страница в раздел «Интернет» «Настройка «новых элементов безопасности» SP2», а также в раздел «Система» добавлена страница «Оснастки XP» (краткое описание). Кроме того, обновлён раздел «Реестр».
На сайте появился новый раздел «FAQ». Его название говорит само за себя. А также обновлены некоторые другие разделы, в частности: «Установка Windows XP».
Обновлён раздел «Сеть», в частности добавлена страница «Конфигурирование локальной сети (Windows XP)», а также обновлена информация в других разделах.
«Полезные ссылки» разложены по категориям.
В разделы «Установка Windows» и «Системные настройки» добавлена информация по «Windows XP». А также в разделе «Компьютерные анекдоты» стало на пару страниц больше.
В разделы «Реестр» и «Интернет» добавлена информация по «Windows XP».
Предназначена для подключения внешних драйверов устройств.
Драйверы обычно оформляются обычным образом и имеют расширение sys, bin или com. В последнем случае драйвер подключается в файле Autoexec.bat, например, драйвер мыши Mouse.com.
Предназначена для загрузки резидентных модулей DOS в высокую память и обеспечения связи DOS с верхней памятью.
Аргумент HIGH специфицирует перемещение резидентных модулей DOS из стандартной памяти в высокую память, если она доступна. В противном случае эти модули остаются в стандартной памяти. По умолчанию используется аргумент LOW, предписывающий оставить резидентные модули DOS в стандартной памяти.
Аргумент UMB указывает, что DOS должна обеспечить связь с верхней памятью, сформированной драйвером Emm386.exe. Когда верхняя память не сформирована, этот аргумент игнорируется.
Аргумент NOUMB запрещает DOS организацию с верхней памятью и принимается по умолчанию.
Замечания: • команда DOS может использоваться только в файле Config.sys; • файл Config.sys может содержать одну или две, не противоречащие друг другу, команды DOS; • перемещение резидентных модулей DOS в высокую память позволяет освободить до 60К стандартной памяти;
Предназначена для загрузки внешнего драйвера не в стандартную, а в верхнюю память.
Команда DEVICEHIGH является аналогом команды конфигурирования DEVICE, однако загружает драйвер не в стандартную память, а в верхнюю и предоставляет пользователю уточнение места загрузки этого драйвера при помощи ключа /L.
Чтобы загрузка драйвера в верхнюю память была возможной, необходимо выполнение трех условий:
1). В ПК должна быть сформирована верхняя память; 2). Должна быть обеспечена связь DOS с верхней памятью; 3). В верхней памяти должен быть свободен по крайней мере один блок, размер которого достаточен для размещения драйвера.
Если хотя бы одно из этих условий не выполняется, то команда DEVICEHIGH выполняется точно так же как и ее аналог – команда DEVICE, загружая драйвер в стандартную память и подключая его к системе.
Размер драйвера сразу после его загрузки в память называется загрузочным размером драйвера. Он, как правило, совпадает с длиной файла, содержащего драйвер. Иногда, этот размер в процессе работы драйвера изменяется. Он может больше первоначального, в том случае если происходит расширение за счет создаваемых драйвером информационных объектов. Или он может уменьшаться после выполнения действий, связанных с инициализацией модуля.
Переключатель /S обеспечивает усечение распределенного драйверу блока памяти после его загрузки наиболее эффективным образом. используется только совместно с указанием числа s1.
Замечания: • эта команда может принести ожидаемые действия только тогда, когда она задана после команды DEVICE, обеспечивающей подключение к системе драйвера Emm386.exe; • эта команда не обеспечивает загрузку резидентных программ в верхнюю память;
Наилучшее использование файлов CONFIG.SYS и AUTOEXEC.BAT
Наилучшее использование файла CONFIG.SYS
При включении компьютера его встроенные программы выполняют внутреннюю диагностику и загружают часть DOS, которая затем ищет в корневом каталоге загрузочного диска файл с именем CONFIG.SYS. Если файл найден, то он используется для настройки системы и загрузки полной версии DOS, если же нет (возможно, из-за того, что вы его случайно уничтожили =), компьютер загружает DOS в конфигурации, заданной по умолчанию, и не устанавливает никаких дополнительных драйверов. То же самое произойдёт, если вы дадите DOS указание проигнорировать CONFIG.SYS (смотрите «Режимы начальной загрузки»).
Возьмите чистую дискету и сформатируйте её командой FORMAT A: /S (т.е. с копированием системных файлов DOS). Затем проверьте, имеется ли на дискете файл COMMAND.COM, и попробуйте с неё загрузиться. Убедившись, что загрузка происходит нормально, пометьте дискету, как «Системная». Теперь можно начинать.
Режимы начальной загрузки.
Но чаще они служат для временного отключения строки при отработке разных вариантов файла. Гораздо проще набрать перед началом строки «REM», чем удалять её, а впоследствии, если потребуется восстановить прежний вариант, набирать заново.
Файл config.sys с многовариантной настройкой имеет следующий вид:
Соответствующий файл autoexec.bat должен выглядеть таким образом:
Лучше всего, продемонстрировать вам имеющиеся файлы config.sys и autoexec.bat…
rem Пример файла CONFIG.SYS
REM Описание дисковода CD-ROM (нижняя строчка) DEVICEHIGH /L:1=\CPQDOS\CPQIDECD.SYS /D:IDECD001
:DONE PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;%PATH% mode con codepage prepare=((866) c:\windows\COMMAND\ega3.cpi) mode con codepage select=866
Следующие команды можно использовать только в Config.sys:
Дальнейшие команды можно использовать в CONFIG.SYS и AUTOEXEC.BAT и в командной строке DOS:
Внимание: Как редактировать Autoexec.bat
Работая с файлом autoexec.bat, очень просто допустить ошибки. Но к счастью, ничего ужасного не произойдёт, если Вы допустите какую-нибудь промашку. Просто DOS выведет на экран соответствующее сообщение. Правда… Иногда ошибка приводит к тому, что Ваше любимое железо не может загрузиться! 🙂 В связи с этим, советую Вам, прежде чем приступать к видоизменению файла, сделайте себе резервную загрузочную дискету.
Какие бывают резидентные программы и какие из них понадобятся
Если вы помните историю появления персональных компьютеров, то наверное знаете, что объём оперативной памяти в них был порядка сотни-двух килобайт. В то время этого было достаточно для всех имеющихся тогда программ.
Фирма IBM в своем первом персональном компьютере IBM PC использовала процессор Intel 8086, способный непосредственно адресовать 1024 килобайта оперативной памяти. Из этого адресного пространства фирма IBM использовала для операционной системы и программ 640 килобайт памяти, зарезервировав оставшиеся 384 килобайта для системного постоянного запоминающего устройства, дисплейного адаптера и другой аппаратуры.
Однако по мере того, как компьютеры становились всё мощнее и мощнее, для них находились новые задачи, требующие всё большего объёма оперативной памяти. Первоначально заложенного в архитектуру IBM PC объёма памяти программ (640 килобайт) стало недостаточно для решения сложных задач.
С появлением процессора Intel 80286, способного адресовать до 16 мегабайт оперативной памяти, возникли предпосылки для расширения доступного программам адресного пространства. Архитектура компьютера IBM AT позволяет использовать для программ все 16 мегабайт памяти.
Это связано с тем, что MS-DOS использует так называемый реальный режим работы процессора 80286. В реальном режиме процессор 80286 становится несколько улучшенным аналогом старого процессора 8086, и может адресовать только первые 1024 килобайта памяти.
Для того, чтобы как-то задействовать память, расположенную выше границы 1024 килобайта (эту память называют расширенной), в новых версиях MS-DOS появились драйверы электронного диска RAMDRIVE.SYS и кэша дисковой памяти SMARTDRV.SYS. Драйвер электронного диска предназначен для организации быстродействующего квазидиска. Этот диск ведёт себя так же, как и обычный, но за счёт того, что данные пересылаются в оперативную память, такой диск работает очень быстро.
Операционная система MS-DOS версии 5.0 может использовать расширенную память и для решения других задач.
В частности, в расширенной памяти (вернее, в её небольшой начальной части размером около 64 килобайт, называющейся верхней памятью) могут располагаться модули, буфера и рабочие области самой операционной системы. Если в компьютере используется процессор 80386 или 80486, можно поместить в расширенную память резидентные программы и драйверы.
А если ваша программа имеет размер 2 мегабайта и к тому же ей требуется обрабатывать массивы данных размером в 1 мегабайт?
Для решения таких задач можно использовать дополнительную память. Эта память располагается на отдельной плате, которая вставляется в слот расширения материнской платы компьютера. Дополнительная память может быть установлена даже в компьютерах, выполненных на базе процессоров 8086 или 8088, которые не могут адресовать память за границей одного мегабайта! Как это может быть?
Здесь всё дело в том, что дополнительная память (которая может по размеру достигать 16 или даже 32 мегабайта) отображается с помощью специальных схем в область памяти, лежащую ниже границы 1024 килобайт, то есть в стандартную память. Для работы с расширенной памятью выделяются 4 окна в области адресов выше границы 640 килобайт, но ниже 1024 килобайт. Причём общий размер этих окон составляет 64 килобайта.
Программы обращаются по адресам, соответствующим одному из четырёх окон. Эти адреса находятся в пределах первых 1024 килобайт. Но специальное аппаратное устройство отображает в эти окна часть дополнительной памяти, поэтому фактически программа будет работать с дополнительной памятью.
При необходимости окна могут двигаться по дополнительной памяти, позволяя программам адресовать весь объём дополнительной памяти.
Ещё одно замечание, касающееся использования программами дополнительной памяти: для получения доступа к дополнительной памяти программы должны непосредственно вызывать драйвер дополнительной памяти. Т.е. для того, чтобы использовать дополнительную память, программы должны быть составлены специальным образом.
Для иллюстрации сказанного выше мы приведём рисунок, на котором изображена упрощённая карта распределения оперативной памяти:
Возможности, имеющиеся у вас для оптимизации использования оперативной памяти, сильно зависят от типа процессора и наличия расширенной или дополнительной памяти.
Компьютер IBM PC или IBM XT
Этот тип компьютера не оснащён расширенной памятью, но в нём может быть установлена плата дополнительной памяти. Если есть дополнительная память, вы можете разместить в ней кэш диска или электронный диск.
Компьютер IBM AT с процессором 80286
Компьютеры с процессорами 80386 или 80486
Остановимся подробнее на второй возможности.
Обычно компьютеры с процессорами 80386 или 80486 оснащены расширенной памятью объёмом от 2 до 64 мегабайт (вам могут встретиться компьютеры с ещё большим объёмом расширенной памяти). Однако многие программы рассчитаны на использование дополнительной памяти.
Получается, что у вас есть море расширенной памяти, но вам-то нужна дополнительная! Как быть в этом случае? Не покупать же ещё и плату дополнительной памяти!
Приведём конкретные рекомендации, которые позволят вам максимально задействовать установленную в компьютере оперативную память.
Компьютер IBM PC или IBM XT
Как мы уже говорили раньше, компьютеры этого класса не имеют расширенной памяти. Плата дополнительная памяти покупается отдельно, поэтому в большинстве случаев компьютеры IBM PC или IBM XT не имеют ни расширенной, ни дополнительной памяти.
В следующей таблице мы перечислим драйверы, входящие в состав MS-DOS версии 5.0. Пользуясь этой таблицей, вы сможете принять решение о необходимости включения того или иного драйвера в состав вашей конфигурации операционной системы.
Компьютер IBM AT с процессором 80286
После установки MS-DOS версии 5.0 на компьютере IBM AT файл CONFIG.SYS будет содержать следующие две строки:
Первая строка нужна для подключения драйвера HIMEM.SYS, управляющего расширенной памятью. Этот драйвер необходим для размещения MS-DOS выше границы 1024 килобайт.
Вторая строка указывает, что MS-DOS и все её рабочие области должны быть размещены в расширенной памяти.
После того, как вы переместили операционную систему в область адресов выше 1024 килобайт, займитесь размещением кэша дисковой подсистемы и электронного диска. Здесь всё зависит от того, сколько и какой памяти установлено в вашем компьютере. Вам необходимо найти компромисс между размером кэша и дополнительной или расширенной памятью, отведённой используемому программному обеспечению. При этом вы можете воспользоваться рекомендациями, приведёнными в главе, посвящённой настройке дисковой подсистемы компьютера.
Компьютеры с процессорами 80386 или 80486
Для реализации этих возможностей подключите драйвер EMM386.EXE:
Эта строка должна располагаться в файле CONFIG.SYS после строки, подключающей драйвер HIMEM.SYS.
В качестве параметра вы можете указать размер эмулируемой дополнительной памяти в килобайтах. Например, если вам нужна дополнительная память размером 1 мегабайт, используйте следующую строку:
Для того, чтобы полностью отключить эмуляцию дополнительной памяти, задайте параметр NOEMS:
В этом случае драйвер EMM386.EXE будет использоваться только для загрузки драйверов и резидентных программ в расширенную память.
Для примера приведём образец файла CONFIG.SYS, в котором подключен драйвер EMM386.EXE:
В первой строке подключается драйвер HIMEM.SYS, необходимый для управления расширенной памятью. Во второй строке подключается драйвер EMM386.EXE, который используется для эмуляции двух мегабайт дополнительной памяти и для загрузки резидентных программ и драйверов в расширенную память. В третьей строке указывается, что MS-DOS должен быть загружён в верхние адреса памяти, и кроме того, что должна быть использована возможность размещения драйверов и резидентных программ в расширенной памяти.
Для загрузки в расширенную память резидентных программ воспользуйтесь командой LOADHIGH или LH. Приведём фрагмент файла AUTOEXEC.BAT, в котором используется загрузка резидентных программ в расширенную память:
Если вам не нужна эмуляция дополнительной памяти, вы можете увеличить размер области расширенной памяти, доступной для загрузки драйверов и резидантных программ на 64 килобайта. Для этого при подключении драйвера EMM386.exe вам необходимо воспльзоваться параметром /I:
Из-за ограниченного объёма книги мы не можем рассказать вам о всех возможностях драйвера emm386.exe. Для получения дополнительной информации обратитесь к документации по операционной системе MS-DOS версии 5.0.
Ещё об оперативной памяти
Для более эффективного использования памяти в компьютерах на базе процессоров 80386 или 80486 необходимо полное понимание механизма, позволяющего загружать драйверы и резидентные программы в расширенную память. Для этого мы вновь вернёмся к карте распределения памяти. Расскажем подробнее об использовании различных участков оперативной памяти операционной системой MS-DOS версии 5.0 при её загрузке в старшие адреса памяти указанием DOS=HIGH в файле CONFIG.SYS.
Область от 0 до 640 килобайт
Это так называемая стандартная память. В области стандартной памяти располагаются вектора прерываний, часть ядра операционной системы, резидентные программы, драйверы. В эту же область загружаются запущенные на выполнение программы. В результате оптимизации нам было бы желательно максимально расширить пространство, доступное программам, переместив ядро операционной системы, драйверы и резидентные программы в расширенную память.
Область от 640 до 1024 килобайт
Как правило, зарезервированная память задействована не полностью, в ней есть свободные области. Эти свободные области и используются при работе с расширенной или дополнительной памятью.
Драйвер EMM386.EXE отображает свободные области на расширенную память, пользуясь виртуальным режимом работы процессоров 80386 или 80486 (.i.режим виртуального процессора 8086;). К сожалению, в этой книге нет места для детального описания виртуального режима работы. Для нас важно, что процессор, находясь в виртуальном режиме при использовании драйвера EMM386.EXE адресуется к свободным областям зарезервированной памяти. При этом процессор использует механизм адресации, соответствующий реальному режиму работы. Однако на эти свободные области зарезервированной памяти отображаются участки расширенной памяти, находящиеся выше границы 1024 килобайта.
Если поместить в свободные участки зарезервированной памяти, отображаемые на расширенную память, драйверы или резидентные программы, физически они окажутся в расширенной памяти. Но сами они об этом не будут знать ничего, продолжая работать так, как будто они находятся в стандартной памяти ниже границы 1024 килобайта.
Драйверы дополнительной памяти также используют свободные участки зарезервированной памяти. Они располагают там окно размером 64 килобайта, отображаемое с помощью специальной аппаратуры на дополнительную память, установленную на отдельной плате. Дополнительная память не входит в адресное пространство процессора и не может адресоваться им непосредственно ни в реальном, ни в защищенном режиме. Она отображается в окно, расположенное в зарезервированной памяти и программы адресуются к ней только через это окно.
Разумеется, программы могут передвигать окно, адресуя через него по частям всю дополнительную память.
Область от 1024 килобайт и выше
Задавая какое-нибудь значение сегментного адреса и меняя смещение, мы можем адресоваться к любым 64 килобайтам памяти в пределах первого мегабайта.
А что получится, если задать сегментный адрес FFFF, то есть самое большое значение для сегментного адреса?
Зададим себе вопрос: что произойдёт, если, например, при записи в память будет указан логический адрес FFFF:0010?
Если в вашем компьютере установлен процессор 8086 или 8088, то произойдет запись в самую первую ячейку оперативной памяти, имеющую физический адрес 00000, так как перенос из 19-го разряда в двадцатый будет игнорирован (адресные разряды в процессоре 8086 или 8088 нумеруются от 0 до 19).
Процессоры 80286, 80386 и 80486 имеют большее количество адресных линий, поэтому перенос в 20-й разряд не будет потерян. Произойдет адресация памяти за пределами первого мегабайта!
Драйвер расширенной памяти QEMM-386
Мы опишем только основные возможности драйвера QEMM-386. Тех, кто хочет использовать все возможности QEMM-386, мы адресуем к документации, поставляющейся вместе с этим драйвером.
Установка драйвера QEMM-386
Программа INSTALL переписывает все файлы с дистрибутивной дискеты в каталог, указываемый при установке драйвера QEMM-386. Затем она подключает драйвер в файле CONFIG.SYS и настраивает параметры драйвера. Если у вас нет проблем с английским языком, мы рекомендуем вам именно этот способ установки драйвера.
Установка драйвера вручную также несложна. Создайте на диске каталог с именем, например, QEMM, и скопируйте в него все файлы с дистрибутивной дискеты. Затем подключите драйвер QEMM.SYS. Например, если вы установили драйвер в каталог QEMM на диске C:, добавьте в файл CONFIG.SYS следующую строку:
Учтите, что драйвер QEMM.SYS должен располагаться в первой строке файла CONFIG.SYS. Кроме того, вы должны отключить драйвер HIMEM.SYS, так как драйвер QEMM.SYS выполняет сам все функции по управлению расширенной памятью.
После того, как вы подключили драйвер QEMM.SYS и перезагрузили компьютер, запустите программу OPTIMIZE, входящую в состав QEMM-386. Эта программа должна находиться в каталоге QEMM.
Программа OPTIMIZE исследует файлы CONFIG.SYS и AUTOEXEC.BAT и пытается сама перенести все драйверы и резидентные программы в свободные области зарезервированной памяти, отображаемые на расширенную память. В процессе своей работы программа модифицирует файлы CONFIG.SYS и AUTOEXEC.BAT и два раза выполняет перезагрузку операционной системы. Проследите за тем, чтобы перед запуском OPTIMIZE в файле AUTOEXEC.BAT не производился запуск таких программ, как Norton Commander, DOSSHELL или WINDOWS.
OPTIMIZE настраивает параметры драйвера QEMM.SYS, модифицирует строки файла CONFIG.SYS, в которых подключаются драйверы.
После завершения процесса оптимизации выдайте команду MEM и убедитесь в том, что свободной памяти стало гораздо больше.
Настройка параметров драйвера QEMM-386
Приведём таблицу некоторых, самых важных на наш взгляд, параметров драйвера QEMM.SYS:
RAM
Этот параметр указывается в тех случаях, когда необходимо выполнить отображение расширенной памяти на свободные участки зарезервированной памяти. Используйте этот параметр, если вы решили переместить драйверы и резидентные программы в расширенную память.
ROM
Параметр указывает на то, что содержимое BIOS должно быть скопировано в расширенную память. Используется для увеличения скорости выполнения программ, активно использующих BIOS.
NOEMS
Если задан этот параметр, драйвер QEMM.SYS не будет выполнять эмуляцию дополнительной памяти. В этом случае освобождается дополнительно 64 килобайта зарезервированной памяти, в которой могут разместиться драйверы и резидентные программы. Вам следует указать этот параметр в том случае, если ни одна из используемых вами программ не нуждается в дополнительной памяти.
Всего же драйверу QEMM.SYS можно указывать десятки параметров, с помощью которых можно выполнить тонкую настройку драйвера практически для любой конфигурации программных и аппаратных средств. Мы научим вас использовать только основные возможности драйвера QEMM.SYS, остальные сведения вы сможете найти в документации на драйвер.
Начните с того, что поместите в самое начало файла CONFIG.SYS следующую строку:
В этом случае драйвер QEMM.SYS будет использоваться только для управления областью старшей памяти HMA и размещения драйверов и резидентных программ в расширенной памяти. Эмуляция дополнительной памяти выполняться не будет.
Далее запустите программу QEMM.COM, которая находится в каталоге QEMM и входит в состав дистрибутивной дискеты. Эта программа нужна для правильной настройки параметров драйвера QEMM-386.
После запуска программа QEMM.COM выведет на экран карту использования оперативной памяти:
Области памяти, отмеченные как «High RAM», доступны для размещения в них драйверов и резидентных программ. Оказывается, у вас есть 168 килобайт памяти для драйверов и резидентных программ!
В данном случае имеется три доступные области с номерами 1, 2 и 3. Эти области имеют размер, соответственно, 31, 7.7 и 133 килобайта.
Для загрузки драйверов в одну из областей используйте драйвер LOADHI.SYS, указав ему в качестве параметра путь загружаемого драйвера и параметры этого драйвера, например:
Для загрузки в расширенную память резидентных программ используйте программу LOADHI.COM. Для этого расположите её в файле AUTOEXEC.BAT и укажите ей путь загружаемой резидентной программы и её параметры:
Разумеется, что вы можете одновременно загружать в расширенную память несколько драйверов и резидентных программ.
После запуска программы OPTIMIZE запустите программу LOADHI ещё раз. Вы увидите, что драйверы и резидентные программы разместились в разных областях зарезервированной памяти:
Во всех областях имеется свободное пространство, в которое можно загрузить драйверы или резидентные программы (свободные области отмечены словом Available).
Для оптимального использования свободных областей зарезервированной памяти вы должны знать, сколько памяти требует каждый используемый вами драйвер или резидентная программа. Как это определить?
Запустите программу MFT.COM, которая находится в каталоге QEMM. С её помощью вы можете определить размер памяти, нужный для резидентных программ и драйверов. Выберите из меню «First Meg» слово «Programs». На экран будет выведен список всех загруженных программ с указанием в столбце Size требуемой для них памяти:
Аналогично для драйверов выберите из меню «DOS» слово «DRIVERS». На экран будет выведен список всех загруженных драйверов с указанием в столбце Size требуемой для них памяти:
Далее исходя из размеров областей зарезервированной памяти определите, как лучше распределить по этим областям нужные вам драйверы и резидентные программы.
Программа LOADHI и драйвер LOADHI.SYS допускают явное указание номера области, в которую необходимо загрузить, соответственно, резидентную программу и драйвер. Номер области указывается с помощью параметра /r:.
Например, для загрузки драйвера мыши в область с номером 3 в файле AUTOEXEC.BAT используйте такую строку:
Аналогично для загрузки драйвера ANSI.SYS в первую область в файл CONFIG.SYS необходимо поместить следующую строку:
Программа OPTIMIZE сама определяет требуемый для используемых резидентных программ и драйверов размер оперативной памяти и сама располагает их оптимальным способом в имеющихся свободных областях. При этом для указания номера области она использует параметр /r:.
Загрузка программ в видеопамять
Вместе с драйвером QEMM-386 поставляется программа VIDRAM.COM. Эта программа позволяет увеличить доступное для программ пространство оперативной памяти на 96 килобайт, при условии, что вы откажитесь от использования графических режимов видеоадаптера. Кроме того, у вас должен быть установлен видеоадаптер EGA или VGA.
Если вам вновь потребовались дополнительные 96 килобайт памяти для программы, работающей в текстовом режиме, введите команду:
Вы можете использовать программу VIDRAM.COM на любом компьютере, имеющем видеоадаптеры EGA или VGA. Тип процессора, установленного в компьютере, значения не имеет.
Быстродействие оперативной памяти
Для согласования скорости работы процессора со скоростью работы оперативной памяти часто приходится искусственно занижать производительность процессора, вставляя специальные такты ожидания во временной цикл работы процессора с памятью.
Разумеется, вы не сможете повлиять на быстродействие установленной в вашем компьютере оперативной памяти, не заменив микросхемы памяти на более быстрые. Но в некоторых компьютерах предусмотрена возможность работы как с быстрой памятью, так и с медленной. Для этого в CMOS-памяти необходимо задать количество используемых при работе с памятью тактов ожидания.
Мы уже говорили, что в CMOS-памяти хранится конфигурация аппаратных средств компьютера. После изменения конфигурации компьютера необходимо обновить содержимое CMOS-памяти. Для этого предназначена специальная программа, часто называемая SETUP-программой или программой установки конфигурации.
SETUP-программа может запускаться при включении компьютера (если нажать определённую клавишу, обычно Del), либо эта программа может поставляться на дискете вместе с компьютером.
Если ваш компьютер оснащён быстродействующей памятью, необходимо убедиться в том, что процессор не вставляет циклы ожидания при обращении к памяти.
Это особенно необходимо, если в вашем компьютере установлен процессор 80386 или 80486. Такие компьютеры обычно комплектуются быстрой памятью. И если в CMOS-памяти указано, что надо вставлять циклы ожидания при работе с памятью, компьютер не будет работать с максимальной производительностью.
При этом программы, обращаясь по адресам, принадлежащим BIOS, будут работать с быстрой оперативной памятью. Это значительно ускорит выполнение программ, активно обращающихся к BIOS.
Если у вас компьютер, имеющий процессор 80386 или 80486 и набор управляющих микросхем фирмы Chips & Technology, при запуске SETUP-программы на экране появляется меню:
В этом меню вам необходимо выбрать выделенную строку. При этом вам будет предоставлена возможность выполнить упрощённую процедуру установки конфигурации компьютера.
После выбора первой строки на экран будет выдано предупреждение о том, что неправильная установка конфигурации может привести к зависанию компьютера:
В этом случае необходимо нажать клавишу INS, затем, не отпуская её, выключить питание компьютера и включить его заново. Клавишу INS следует отпустить только после прохождения теста оперативной памяти. После выполнения такой операции в CMOS-память будет записана конфигурация из BIOS.
На этом этапе вы можете отказаться от изменения конфигурации, если нажмёте клавишу ESC.
Если же вы решили изменить конфигурацию, нажмите клавишу ENTER. Вы увидите на экране следующее меню:
Здесь можно задать конфигурацию памяти (Memory Configuration), параметры тактового генератора (Clock Source), режим теневой памяти и использование чередования при работе с памятью (Shadow RAM/Memory Interleave).
С помощью клавиш перемещения курсора вы можете переключаться с одной области параметров на другую. Изменение значения параметров выполняется клавишами PgUp и PgDn. Когда вы будете нажимать на эти клавиши, в выбранной области будет происходить циклическое изменение значений параметров.
Выберите область Waitstate. В этой области задаётся количество тактов ожидания при работе с оперативной памятью. Для увеличения скорости работы установите режим «0 WAIT STATE», при котором такты ожидания не используются.
Затем с помощью клавиш перемещения курсора перейдите в область Shadow RAM/Memory Interleave. Установите режим использования теневой памяти ENABLED, как это показано на предыдущем рисунке.