Как загрузить программы в расширенную память
В случае, если у вас компьютер с процессорами 80386, 80486 или Pentium, вы легко можете увеличить свободное пространство стандартной оперативной памяти, доступное для программам MS-DOS. Для этого вы можете, используя специальные средства MS-DOS, перенести большинство драйверов и резидентных программ из стандартной памяти в расширенную.
Более того, при использовании MS-DOS версии 6.0 этот перенос и последующая оптимизация использования оперативной памяти могут быть выполнены автоматически с помощью программы MemMaker. Автоматизация переноса драйверов и резидентных программ, из стандартной памяти в расширенную описана в разделе "Что такое MemMaker".
Еще одной возможностью использования расширенной памяти на компьютерах с процессорами 80386 и 80486 является эмуляция дополнительной памяти. Эта возможность неоценима, в случае, если вы работаете с программами, нуждающимися в дополнительной памяти, а у вас на компьютере она не установлена.
Для реализации возможности использования расширенной памяти предназначен драйвер EMM386.EXE, входящий в комплект MS-DOS. Для подключения драйвера EMM386.EXE разместите в файле CONFIG.SYS после команды загрузки драйвера HIMEM.SYS следующую команду:
DEVICE=C:\DOS\EMM386.EXE [параметры]
В качестве параметров вы можете указать размер эмулируемой дополнительной памяти в килобайтах, режим эмуляции дополнительной памяти и т. д. Например, если вам нужна дополнительная память размером 1 мегабайт, используйте следующую команду:
DEVICE=C:\DOS\EMM386.EXE 1024
Если вы не укажите размер эмулируемой дополнительной памяти, будет использовано значение по умолчанию - 256 килобайт.
Для того, чтобы полностью отключить эмуляцию дополнительной памяти, укажите при загрузке драйвера EMM386.EXE параметр NOEMS:
DEVICE=C:\DOS\EMM386.EXE NOEMS
В этом случае драйвер EMM386.EXE будет использоваться только для загрузки драйверов и резидентных программ в расширенную память.
Однако, даже если вы подключите драйвер EMM386.EXE, ваши резидентные программы и драйверы не попадут автоматически в расширенную память. Для того, чтобы разместить драйверы и резидентные программы в расширенной памяти, вам необходимо сделать следующее:
Для примера приведем образец файла CONFIG.SYS, в котором подключен драйвер EMM386.EXE:
DEVICE=C:\DOS\HIMEM.SYS DEVICE=C:\DOS\EMM386.EXE 1024 DOS=HIGH,UMB DEVICEHIGH=C:\DOS\HYPER386.EXE DEVICEHIGH=C:\DOS\ANSI.SYS
Первая команде загружает драйвер HIMEM.SYS, необходимый для управления расширенной памятью. Вторая команда подключает драйвер EMM386.EXE, используемый для эмуляции одного мегабайта дополнительной памяти, а также для загрузки резидентных программ и драйверов в расширенную память. Третья команда указывает, что MS-DOS должен быть загружен в область старшей памяти, и должна быть использована возможность размещения драйверов и резидентных программ в расширенной памяти.
В последних двух командах драйвер дискового кеша - HYPER386.EXE и эмулятора ANSI терминала - драйвер ANSI.SYS, загружаются в расширенную память. Обратите внимание, что для загрузки драйверов в расширенную память используется не команда DEVICE, а команда DEVICEHIGH. Также обратите внимание, что драйвер HIMEM.SYS и драйвер EMM386.SYS загружены в основную память командой DEVICE.
Для загрузки в расширенную память резидентных программ воспользуйтесь командой LOADHIGH или сокращенно LH. Приведем фрагмент файла AUTOEXEC.BAT, в котором выполняется загрузка резидентных программ в расширенную память:
LOADHIGH C:\CYRYLLIC\CYRKEYB C LH C:\MOUSE.COM
Первая строка демонстрирует загрузку в расширенную память драйвера клавиатуры, вторая - драйвера мыши.
Из-за ограниченного объема книги мы не можем рассказать вам о всех возможностях драйвера EMM386.EXE. Для получения дополнительной информации обратитесь к документации по операционной системе MS-DOS версии 6.0 или Microsoft Windows версии 3.1.