Platform SDK: Memory

Virtual Address Space

The virtual addresses used by a process do not represent the actual physical location of an object in memory. Instead, the system maintains a page map for each process, which is an internal data structure used to translate virtual addresses into corresponding physical addresses.

The virtual address space is divided into partitions as follows.

Windows NT Server Enterprise Edition/Windows 2000 Advanced Server: The 3 GB partition in low memory (0x00000000 through 0xBFFFFFFF) is available to the process, and the 1 GB partition in high memory (0xC0000000 through 0xFFFFFFFF) is reserved for the system.

Windows NT/2000: The 2 GB partition in low memory (0x00000000 through 0x7FFFFFFF) is available to the process, and the 2 GB partition in high memory (0x80000000 through 0xFFFFFFFF) is reserved for the system.

Windows 95/98: The following are the partitions on Windows 95/98.

Range Usage
0K - ~64K (0xFFFF) Not writable. This boundary is approximate due to the way the Windows 95/98 loads some features of Microsoft® MS-DOS®. This memory is private to the process.
~64K (0x10000) -
4 MB (0x3FFFFF)
Reserved for MS-DOS compatibility. This memory is fully readable and writable by the process. However, this range of memory may have some MS-DOS–related structures or code in it, so processes should not arbitrarily read from or write to it. This memory is private to the process.
4MB (0x400000) -
2GB (0x7FFFFFFF)
Available for code and user data. User data is readable and writable by the process. Code is execute-only. This memory is private to the process.
2GB (0x80000000) -
3GB (0xBFFFFFFF)
Shared area, readable and writable by all processes. A number of system DLLs and other data are loaded into this space.
3GB (0xC0000000) -
4GB (0xFFFFFFFF)
System memory, readable or writable by any process. However, this is where low-level system code resides, so writing to this region may corrupt the system, with potentially catastrophic consequences.

For more information on virtual memory, see the following topics: