Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Компьютер IBM PC/AT, MS-DOS и Windows. Вопросы и ответы

© Александр Фролов, Григорий Фролов
Том 10, М.: Диалог-МИФИ, 1993, 218 стр.

[Назад] [Содеожание] [Дальше]

2.8. Как загрузить программы в расширенную память

В случае, если у вас компьютер с процессорами 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 драйвер HIMEM.SYS;
  • поместить в файл CONFIG.SYS строку "DOS=HIGH,UMB";
  • для загрузки драйверов в расширенную память вместо оператора "DEVICE=" использовать оператор "DEVICEHIGH=";
  • для загрузки резидентных программ в файле AUTOEXEC.BAT использовать команду LOADHIGH, передав ей в качестве параметра имя и параметры загружаемой резидентной программы.

Для примера приведем образец файла 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.

[Назад] [Содеожание] [Дальше]