Expanded Memory Support

OS/2 Version 2.0 supports expanded memory according to the LIM EMS Version 4.0. Under DOS, special hardware is normally required to support EMS, although a number of software-based EMS emulation packages exist. MVDM supports EMS by mapping memory allocation requests into the linear process address space, using normal system memory. Hence no special hardware or software is required.

The OS/2 Version 2.0 LIM EMS emulation provides the following function:

  • Implements all the required functions in the LIM EMS Version 4.0.

  • Provides each VDM with a separate EMS emulation. Each VDM has its own set of expanded objects so that features like interprocess communication work as they would if each VDM were running on a different real 80386. Each VDM cannot affect the availability of objects in other VDMs or access memory in other VDMs.

  • Provides for remapping of conventional memory (below 640KB) for use by programs like Windows 2.0.

  • Provides configurable limits for how much EMS memory is available across VDMs, as well as a limit per VDM. The DOS Settings feature allows the user to override the per-VDM limit, subject to the constraint given by the overall limit.

  • Supports multiple physical to single logical mappings. Different 8086 addresses can map to the same expanded memory object address. This is required by programs like Lotus 1-2-3.

  • EMS can be removed and the operating system can run without loading EMS in any VDM session.

    Memory objects are mapped into the V86 mode address space (below 1MB), so DOS applications can access very large address spaces. Applications access EMS services using the DOS interrupt INT 67h.


    [Back: Memory Extender Support]
    [Next: Virtual Expanded Memory Manager]