Меню
Главная
Случайная статья
Настройки
|
HIMEM.SYS — драйвер дополнительной (extended memory) и HMA-памяти для операционной системы MS-DOS, обеспечивающий поддержку дополнительной памяти (extended или expanded).
HIMEM.SYS был введён в состав MS-DOS 5.0 для возможности загрузки ядра операционной системы DOS в High Memory Area с целью увеличения размера доступной основной области памяти путём указания загрузки DOS=HIGH в CONFIG.SYS.
HIMEM.SYS предоставляет доступ к оперативной памяти за пределами первого мегабайта пространства и потому драйвер необходим системам MS Windows9x/ME для загрузки графической части операционных систем. В FreeDOS соответствующий файл называется HIMEM.EXE и может загружаться из конфигурационных файлов FreeDOS с именами FDCONFIG.SYS или CONFIG.SYS.
Содержание
Расширенное управление памятью
При использовании HIMEM.SYS становится возможным размещение в дополнительной (extended или expanded memory) области памяти части ядра MS-DOS, служебных таблиц системы и буфера ввода-вывода. Туда же можно загружать и COMMAND.COM. Если персональный компьютер сделан на микропроцессоре 80386, то также можно освободить основную память от большинства резидентных драйверов.
Изменение организации доступа к памяти в Windows NT резко ограничило применение менеджеров памяти, в том числе и HIMEM.SYS.
Использование команды
Для загрузки HIMEM.SYS под MS-DOS, в файл CONFIG.SYS (или CONFIG.NT для систем на основе Windows NT) добавляется строка:
(на 80286)
|
(на 80386 и далее)
|
DOS=HIGH
|
DOS=HIGH,UMB
|
device=(drive:)(path)HIMEM.SYS
|
device=(drive:)(path)HIMEM.SYS
|
|
DEVICE=EMM386.EXE RAM
|
|
DEVICEHIGH= ...
|
где (drive:) и (path) — соответственно имя диска и путь к каталогу, где находится файл HIMEM.SYS.
Кроме того, для 80386 допускается команда LOADHIGH (LH).
Необязательные параметры драйвера HIMEM.SYS
Параметр
|
Объяснение
|
/A20CONTROL:ON
|
По умолчанию: OFF, то есть DOS управляет А20 только если другая программа не занимается тем же.
|
/CPUCLOCK:ON
|
Этот параметр рекомендуется указывать, если в присутствии HIMEM.SYS часы замедляют работу.
|
/HMAMIN=n
|
Если драйвер использует меньше (n) Кб памяти, он не будет вызван. 0<=n<=63.
|
/INT15=n
|
Число кБ, резервируемое в дополнительной памяти для программ типа Paradox, QEMM и аналогичных.
|
/MACHINE:код ЭВМ
|
(AT, PS2 и т. д.) Таблица кодов приводится в документации к MS-DOS 5.00. От кода зависит, какой обработчик А20 используется.
|
/NUMHANDLES=n
|
Это максимальное число обработчиков доп. памяти. Требуется по 6 байт на блок. 1<=n<=128.
|
/SHADOWRAM:OFF
|
Не копировать ROM-BIOS в RAM (OFF экономит память, но замедляет работу). По умолчанию: ON.
|
Необязательные параметры драйвера EMM386.EXE (в CONFIG.SYS)
Параметр
|
Объяснение
|
память
|
- в кБ по умолчанию 256.
|
Mкод
|
- код базового начального адреса EMS:
1,2,3,4 (C000,C400,C800,CC00)
5,6,7,8 (D000,D400,D800,DC00)
9 (E000)
10,11,12,13 (8000,8400,8800,8C00)
14 (9000)
|
FRAME=адрес
|
— аналогично, явное задание базы EMS
|
/Pадрес
|
- то же самое
|
/Pn=адрес
|
- адрес сегмента страницы EMS
n=0 | 1 | 2 | 3 | 254 | 255
|
/X=нач-кон
|
- не использовать этот участок (оба адреса — шестнадцатеричные числа)
|
B=адрес
|
— нач. адрес для Bank switching (по умолчанию — 4000)
|
L=n
|
— оставить (n) кБ как extended memory
|
A=n
|
— число альтернативных регистров, от 0 до 254, по умолчанию 7
|
H=n
|
— число обработчиков, от 2 до 255, по умолчанию 64
|
RAM или NOEMS
|
- занять часть верхней памяти (640кБ-1МБ)
|
Функциональность
Пример карты памяти MS-DOS после загрузки HIMEM.SYS
Максимально допустимый размер программы: 639,056 (624K)
Наибольший свободный блок верхней памяти: 143,232 (140K)
Резидентная часть MS-DOS загружена в сегмент HMA.
Тип памяти Размер Занято Свободно
---------------- ----------- ----------- -----------
Обычная 655,360 16,288 639,072
Верхняя 158,208 14,976 143,232
Зарезервировано 0 0 0
Память XMS 32,282,112 275,968 32,006,144
---------------- ----------- ----------- -----------
Всего памяти: 33,095,680 307,232 32,788,448
Ниже 1 МБ: 813,568 31,264 782,304
Имя Размер Обычная память Верхняя память
-------- ---------------- ---------------- ----------------
SYSTEM 18,464 (18K) 10,656 (10K) 7,808 (8K)
HIMEM 1,168 (1K) 1,168 (1K) 0 (0K)
EMM386 4,256 (4K) 4,256 (4K) 0 (0K)
COMMAND 7,168 (7K) 0 (0K) 7,168 (7K)
Свободно 782,304 (764K) 639,072 (624K) 143,232 (140K)
Примечания- Programmer’s Technical Reference for MS-DOS and the IBM PC
- Руководство пользователя
- Справочное руководство программиста
См. также
|
|