Title: Supported Memory Specifications ID: Qualitas Technical Document 115 Product: 386MAX, BlueMAX Date: 09/16/93 Supported Memory Specifications ------------------------------- Qualitas MAX supports all of the leading PC memory specifications. Among these standards are the EMS, XMS, VCPI, and DPMI specifications. EMS Memory ---------- The Expanded Memory Specification (EMS) was developed by Lotus Development Corporation, Intel Corporation, and Microsoft Corporation. The EMS specification outlines a means by which resources above the 1MB boundary can be accessed by programs which are EMS aware. Expanded memory is provided by a software driven EMS manager which controls the EMS resources. While systems with 80386 or later microprocessors can directly emulate EMS with only a software driver, earlier architectures require hardware support in the form of a LIM EMS card. EMS memory above the 1MB boundary is configured in 16 KB units called pages. The memory cannot be accessed directly since the scope of DOS is limited to the first megabyte. Instead the pages are obtained by virtually remapping them through a 64 KB 'window' in memory known as the page frame. To obtain a copy of the EMS specification, write to: Intel CO3-07 5200 NE Elam Young Parkway Hillsboro, OR 97124 XMS Memory ---------- The eXtended Memory Specification (XMS) allows for the orderly allocation of extended memory resources. The specification outlines three different regions of memory known as Upper Memory Blocks (UMBs), Extended Memory Blocks (EMBs), and the High Memory Area (HMA). The UMBs consist of the unused area between the system hardware found in the region between physical addresses 640 KB and 1 MB. This area is also used by memory managers and is commonly referred to as high DOS. By using functions detailed in the XMS specification, many resident programs can load resources into UMBs automatically. This reduces the overhead found in the first 640 KB. The HMA is the 64KB area starting at 1024KB and can be used by only one program at a time. It is commonly used by system software such as DOS 5.0 (as well as DR DOS 5.0 and later) to load the bulk of the DOS kernel out of the first 640 KB. The EMBs simply consist of extended memory above 1088 KB (1MB + 64KB). To obtain a copy of the XMS specification, write to: Microsoft Corporation 16011 NE 36th Way P.O. Box 97017 Redmond, WA 98073 VCPI ---- The Virtual Control Program Interface (VCPI) memory specification outlines a client-host relationship which allows more than one protected mode program to execute at the same time. Since the VCPI interface is an extension of the EMS specification, the VCPI server allocates EMS rather than extended memory. The specification was originally developed by Phar Lap Software, Inc. and Quarterdeck Office Systems. DPMI ---- The DOS Protected Mode Interface (DPMI) is a relatively new memory specification. The interface allows more than one protected mode application to execute at a time much like VCPI, but the DPMI server retains more control than a VCPI server in order to better ensure the integrity of the system. Protected mode applications also tend to be easier to develop under DPMI. For these reasons, DPMI will likely supersede VCPI in the future. To obtain a copy of the DPMI specification, write to: Intel Literature JP26 3065 Bowers Avenue P.O. Box 58065 Santa Clara, CA 95051 ******************************************************************************** Qualitas and 386MAX are registered trademarks, and BlueMAX and RAMexam are trademarks of Qualitas, Inc. All other product names are trademarks of their respective owners. This technical note can be copied and distributed freely provided the information is reproduced in its entirety and is not distributed for profit.