OSOTMEM1 - OS/2 ADDRESSING MEMORY GREATER THAN 16 MB 01/26/96 ======================================================================= OS/2 Addressing Memory Greater Than 16 MB--All OS/2 Releases ======================================================================= Please Read Entire Document for Full Explanation of Procedures -------------------------------------------------------------- DESCRIPTION This document provides information about how OS/2 addresses memory greater than 16 MB. RESOLUTION OS/2 attempts to address all RAM directly, but can be limited by device drivers to addressing only 16 MB. OS/2 queries loaded device drivers to determine if a given device driver can access more than 16 MB of RAM. If any device driver returns that it cannot address more than 16 MB, OS/2 directly addresses only 16 MB of RAM. RAM above 16 MB is reserved for an in-memory Swapper, which is used before SWAPPER.DAT is used. If NOSWAP is set in the MEMMAN statement, the in-memory Swapper is not disabled. The call used to query the device drivers is a DOSDevIOCtl, Category 8, function 63h API call. A device driver might not be able to address RAM above 16 MB because: * The device driver is a block device driver, which uses DMA, whose DMA channel is only 24 bits, and the device driver was not programmed to work around the DMA's limitation of addressing 16 MB of RAM. * The greater-than-16-MB bit in the device-driver attributes returned from the API call is not set. ______________________________________________________________________ IBM disclaims all warranties, whether express or implied, including without limitation, warranties of fitness and merchantability with respect to the information in this document. By furnishing this document, IBM grants no licenses to any related patents or copyrights. Copyright (c) 1994, 1996 IBM Corporation. Any trademarks and product or brand names referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information.