Share on Facebook Share on Twitter Email
Answers.com

EMM386

 

Starting with DOS 5 and Windows 3.0, EMM386.EXE is an expanded memory manager (EMM) for 386s and up, which is software that converts extended memory into EMS memory. It also allows drivers and TSRs to be stored in the upper memory area (UMA) between 640K and 1M.

EMS memory is required by some DOS applications. Most users running Windows and an occasional DOS program do not require it. However, EMM386's ability to store drivers in the UMA helps free up more conventional memory, which is the first 640K of memory. Windows 3.1 relies on DOS for many basic functions, thus freeing up conventional memory is equally as important for Windows 3.1 as it is for a DOS-only system.

In Windows 95/98, EMM386.EXE can still be used to store 16-bit drivers and TSRs in upper memory if required. However, Win 95/98 has its own memory manager that supports EMS memory if DOS applications run windowed rather than full screen.

EMM386 is activated with a statement in the CONFIG.SYS file. The HIMEM.SYS driver must precede EMM386.EXE:

          device=himem.sys
          device=emm386.exe

To provide access to the UMA, either the RAM or NOEMS parameters must be added:

      device=emm386.exe noems    UMA only
      device=emm386.exe ram      UMA and EMS

The default amount of memory used is 256K, but you can allocate from 16 to 32768K, for example:

     device=emm386.exe 1300 ram

For DOS 6 Users: The EMM386.EXE that comes with DOS 6 can dynamically convert extended memory into EMS memory when an application requires it. To free up all of extended memory until some of it is required for your EMS application, type:

     device=emm386.exe min=0 ram

EMM386.EXE is an executable program, which can be run after it has been initialized in order to change settings. For example, you can turn off EMS memory management by typing:

           emm386 off     turn it off

           emm386 on      turn it back on

Download Computer Desktop Encyclopedia to your iPhone/iTouch

Search unanswered questions...
Enter a question here...
Search: All sources Community Q&A Reference topics
Wikipedia: EMM386
Top

The name EMM386 was used for the expanded memory managers of both Microsoft's MS-DOS and Digital Research's DR-DOS, which created expanded memory using extended memory on Intel 80386 CPUs.

The technique probably first appeared with the development of CEMM, included with Compaq DOS 3.31 in 1987. Microsoft's version first appeared, built-in, with Windows/386 2.1 in 1988 and as standalone EMM386.SYS with MS-DOS 4.01 in 1989; the more flexible EMM386.EXE version appeared in MS-DOS 5.0 in 1991. EMM386.EXE is also included as part of the FreeDOS utilities

Just as the other expanded memory managers, EMM386 uses the processor's virtual 8086 mode. It temporarily shuts down during a Windows session in 386 Enhanced mode, with Windows' protected mode kernel taking over its role.

EMM386.EXE can map memory into unused blocks in the Upper Memory Area, allowing device drivers and TSRs to be "loaded high", preserving Conventional memory. (For details, see Upper Memory Area.)

See also


 
 
Learn More
DOS Loadhigh (technology)
UMA (technology)
QEMM

Post a question - any question - to the WikiAnswers community:

 

Copyrights:

Computer Desktop Encyclopedia. THIS COPYRIGHTED DEFINITION IS FOR PERSONAL USE ONLY.
All other reproduction is strictly prohibited without permission from the publisher.
© 1981-2009 Computer Language Company Inc.  All rights reserved.  Read more
Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "EMM386" Read more