Allocates a logical region of memory.
#include <esm.h> int ESMAllocWindow ( size_t size, void **logicalAddress, void *callerID);
(IN) Specifies, in bytes, the size of the logical buffer. The size is rounded up to the next multiple of 4 MB (4194304).
(OUT) Points to where the logical address value is returned.
(IN) Not currently used. Pass 0.
If successful, returns 0. Otherwise, returns a nonzero error code.
For other possible values, see Section 30.3, Return Values for ESM Functions.
Extended server memory is handled in 4 MB blocks for efficiency. After allocating a window, memory that is allocated with ESMAlloc can be mapped to gain access to the memory through the window.
All windows must be freed using ESMFreeWindow before unloading your NLM to avoid the loss of memory.