As I've expanded this post beyond its original intent, I've renamed it. This thread was originally called "Windows XP 3GB limit"
I found a good explanation of the cap placed on physical memory by 32 bit versions of Windows XP here.
Pertinent quotes:
The physical address space is used to address more than just RAM. It is also used to address all of the memory and some of the registers presented by devices. Consequently, if a machine is configured with the maximum amount of physical memory, some of that memory will be unusable because some of the physical address space is mapped for other uses.Video cards nowadays commonly have one or two hundred MB of RAM on them. That video RAM takes up part of the 4GB address space, which then is not available for your physical RAM.I was a little confused by this part:The /3GB switch in the boot.ini file affects the way Windows XP allocates the 32-bit virtual address space that each process gets. By default, that address space is split evenly between the operating system and the program. The /3GB switch forces the OS to allocate 3GB to the program and only 1GB to the system. This can result in the OS being squeezed and not working efficiently. It's necessary for only a very few, extremely RAM-hungry programs. It will not make your missing physical RAM reappear.
But reading the Microsoft document clarifies things a little:The Microsoft document referenced above says that 32-bit Windows XP allows 128GB of RAM. That's 37 bits of address space.
There's an article examining the benefits and drawbacks of running 64 bit versions of Windows here.Current x86 CPUs use 32, 36, or 40 bits for physical addresses in the modes that Windows supports, although the chipsets that are attached to some 40-bit processors limit the sizes to fewer bits. Current releases of 32-bit Windows support a maximum of 37 bits of physical address for use as general-purpose RAM (more may be used for I/O space RAM), for a maximum physical address space of 128 GB. (These values may increase in the future.) Windows also continues to support older processors that decode only 32 bits of physical address (and thus can address a maximum of 4 GB).
A processor that uses full 64-bit virtual addresses can theoretically address 16 exabytes. (An exabyte is a billion gigabytes, and a terabyte is a thousand gigabytes.) Current releases of 64-bit Windows support from 40 to 50 address bits and 128 GB to 1 terabyte of RAM, depending on the specific edition of the operating system.
Pertinent quotes:
So to sum up:The upshot is that it doesn't make sense to install a 64 bit version of Vista in order to better utilise 4GB of memory simply because the 32 bit version would only recognise 3.5GB. The problem is that while it is true that you would "gain" the missing memory, you would also immediately lose it to the system due to the 64 bit version's larger memory footprint. Thus, using a 64 bit version really only makes sense with larger memory sizes.
- Windows XP 32 bit can access a 4GB physical address space.
- This physical address space is reduced by memory needed for the system ROM and devices including PCI and PCIe cards.
- The resultant memory size represents how much of your physical memory is available to the OS.
- Each 32 bit process has a 32 bit virtual address space. This is split so that 2GB is allocated to application code and 2GB to the operating system.
- The /3GB switch adjusts this balance and is only worthwhile for very memory hungry applications.
- The /3GB switch may harm performance by limiting the virtual memory space available to the OS.
- The /3GB switch will not free up any more of your physical memory.
Regarding 64 bit Operating Systems:
- 64 bit versions of WIndows have access to a larger physical address space.
- 32 bit applications run under a subsystem called Windows-on-Windows 64.
- 32 bit applications running under WOW64 still only have a 32 bit virtual address space.
- Unless you have greater than 4GB of physical memory, moving to a 64 bit version of Windows will not benefit you (at least in terms of physical memory utilisation).
Connect With Us