On Tue, Jun 29, 2010 at 5:03 PM, Roger Wright <[email protected]> wrote: > Can 32-bit apps take advantage of the additional RAM seen by a 64-bit > OS or are they limited to running in a regular 32-bit memory space?
32-bit programs still see a 32-bit virtual address space (4 GiB). However, the kernel and drivers and hardware are not constrained to a 32-bit address space, so they don't eat into that. So 32-bit programs can access *more* of the 32-bit virtual address space. However, unless the 32-bit program was compiled with a special flag (LARGE_ADDRESS_AWARE, if I remember correctly), they are artificially constrained to a 2 GiB virtual address space. IIRC, a 32-bit program with LARGE_ADDRESS_AWARE can access up to 4 GiB of in-process memory on a 64-bit system. That will include non-RAM memory mapped regions, though. You can also run more 32-bit programs at once on a 64-bit system, since the 64-bit system can have more total RAM, giving each 32-bit process a bigger chunk than if the system as a whole was limited to 4 GiB. Thus, whether or not moving to a 64-bit Windows will help your "out of memory" problem depends on a number of factors. :) -- Ben ~ Finally, powerful endpoint security that ISN'T a resource hog! ~ ~ <http://www.sunbeltsoftware.com/Business/VIPRE-Enterprise/> ~
