The following table shows the memory management functions with a description of the purpose of each.
| Programming element | Description |
|---|---|
| CeHeapCreate | This function allows users to create a heap with a custom allocator or deallocator function. |
| GetDllVersion | This function retrieves the major and minor version numbers of the system that the specified DLL expects to run on. |
| GetProcessHeap | This function obtains a handle to the heap of the calling process. |
| GlobalMemoryStatus | This function gets information on the physical and virtual memory of the system. |
| HeapAlloc | This function allocates a block of memory from a heap. |
| HeapCompact | This function attempts to compact a specified heap. It compacts the heap by coalescing adjacent free blocks of memory and decommitting large free blocks of memory. |
| HeapCreate | This function creates a heap object that is private to the calling process. |
| HeapDestroy | This function destroys the specified heap object. |
| HeapFree | This function frees a memory block allocated from a heap by the HeapAlloc or HeapReAlloc function. |
| HeapReAlloc | This function reallocates a block of memory from a heap. |
| HeapSize | This function returns the size, in bytes, of a memory block allocated from a heap by the HeapAlloc or HeapReAlloc function. |
| HeapValidate | This function validates the specified heap. HeapValidate scans all the memory blocks in the heap and verifies that the heap control structures maintained by the heap manager are in a consistent state. The HeapValidate function can also be used to validate a single memory block within a specified heap without checking the validity of the entire heap. |
| IsBadCodePtr | This function determines whether the calling process has read access to the memory at the specified address. |
| IsBadReadPtr | This function verifies that the calling process has read access to the specified range of memory. |
| IsBadWritePtr | This function verifies that the calling process has write access to the specified range of memory. |
| LocalAlloc | This function allocates the specified number of bytes from the heap. |
| LocalFree | This function frees the specified local memory object and invalidates its handle. |
| LocalReAlloc | This function changes the size or the attributes of a specified local memory object. |
| LocalSize | This function returns the current size, in bytes, of the specified local memory object. |
| SecureZeroMemory | This function fills a block of memory with zeros. |
| VirtualAlloc | This function reserves or commits a region of pages in the virtual address space of the calling process. |
| VirtualFree | This function releases or decommits, or both, a region of pages within the virtual address space of the calling process. |
| VirtualProtect | This function changes the access protection on a region of committed pages in the virtual address space of the calling process. |
| VirtualQuery | This function provides information about a range of pages in the virtual address space of the calling process. |
See Also
Send Feedback on this topic to the authors