Open access to the High Memory Area (HMA)
The High Memory Area (HMA) is the first 64 KByte after the first 1024 Kbyte (Conventional+UMA).
Memory | Size | Provider |
---|---|---|
XMS/[EMS](/article/expanded-memory-ems-extended-memory-xms.html) | ? K | Himem.sys/Emm386.exe |
HMA | 64K | Himem.sys |
[UMA/UMB](/article/upper-memory-block-umb.html) | 384K | Emm386.exe |
Conventional | 640K |
It is possible to load some of the DOS environment into the HMA and free up some conventional memory.
Edit CONFIG.SYS and update/insert these lines:
DEVICE=C:\DOS\HIMEM.SYS
DOS=HIGH
Note the HIMEM.SYS is a driver that forfills the eXtended Memory Specification (XMS), which specifies how to allocate memory beyond the first 1024 KByte and therefore also the HMA. The memory beyond the HMA is called extended memory or just XMS.
More Info MS KB91088
More Info MS KB72302
More Info MS KB96711
More Info MS KB105557