Vladimir Panteleev wrote:
On Fri, 16 Jul 2010 01:20:07 +0300, Rainer Schuetze <r.sagita...@gmx.de> wrote:

There is only 2GB virtual memory available (3GB with some tweaks)

The allocation granularity doesn't affect virtual memory either (at least according to all Process Explorer indications).

But the alignment requirements disallow allocating memory that fills the wasted address space. I guess even HeapAllocate will use VirtualAlloc as its back end.


Does this 2 or 3GB limitation only affect 32-bit operating systems? On my 64-bit Windows, with /LARGEADDRESSAWARE, a simple program can do close to 64K (65062 for me) 1-byte VirtualAllocs.


Normal 32-bit processes have 2 GB address space. Processes with /LARGEADDRESSAWARE set in the executable get 3GB on 32-bit OS (XP needs to boot with the /3GB option), and almost 4GB on 64-bit OS.

Reply via email to