|
This section explains the way PCs and the PC card handle
memory beyond the standard 640K, and the different terms used by PC
software to describe different areas of memory.
Modern version of DOS shield the user from memory allocation matter
quite well, so you shouldn't need to read this section unless interested,
or in case of difficulty.
If you have more than 1MB of RAM you will need either a memory manager
to access the full memory. All modern version of DOS (5 or later) include
such software, and numerous third-party utilities also exist. The DOS installation
process should install this into your CONFIG.SYS file for you.
The rest of this section provides technical information about PC memory
handling, and examples of manual CONFIG.SYS settings for typical extended
memory use.
-
Conventional memory is memory from 0 to 640K (00000h to 9FFFFh).
This is the RAM used for DOS and for programs.
-
Upper memory is memory between 640K and 1MB (A0000h to FFFFFh).
This area is used for video memory (A0000h to BFFFFh – although it is not
all used if you do not use VGA graphics modes), and for the BIOS (F4000h
to FFFFFh).
-
High memory is the first 64K-16bytes above 1MB (100000h to 10FFF0h).
This can be accessed only if you have more than 1MB of RAM, and needs a
memory manager such as HIMEM.SYS which can control the 'a20' address line.
-
Extended memory is memory above 1MB. This obviously only exists
on cards with more than 1MB of RAM, and needs a memory manager to make
it available to programs that can use it.
-
Expanded memory is not directly acessible by the CPU – it can only
be accessed by additional hardware, although some memory managers (Expanded
Memory eMulators) can make extended memory available as expanded memory
to programs that need it.
If you have a version of DOS earlier than 5 and more than 1MB of RAM you
will need a third party memory manager, or to upgrade to either:
-
MS-DOS 5 and 6, PC-DOS 6, which have two primary memory managers:
HIMEM.SYS and EMM386.EXE. HIMEM.SYS is an extended memory manager which
simply allows the RAM above 1M to be accessed. EMM386.EXE allows this memory
to be used as expanded memory and/or it allows upper memory blocks to be
used for DOS and its device drivers.
-
DR-DOS 5 or 6/Novell DOS 7, which have one primary memory manager:
EMM386.SYS which does all of the above.
Memory managers must be installed before other device drivers in the CONFIG.SYS
file. See your DOS manual for details on how to do this. Versions of DOS
before version 5 do not include memory managers, although Windows 3.0 or
later comes with HIMEM.SYS. |