Windows XP Memory Question

marklaur

Honorable
Feb 23, 2012
9
0
10,510
Currently I am running Windows XP SP3 (x86) with 2 gig memory and a video card with 1 gig memory. Since XP (x86) can only access just over 3 gig memory all up I guess the system should be able to see all the memory OK.

Now I am intending to dual boot XP x86 and windows 7 x 64 bit. I am going to install 8 gig system ram and a video card with 2 gig ram.

I gather that the 3 gig memory limit for XP x86 includes both system and video card memory.

So my question is how to I configure XP to use the memory I want for certain games.
Will XP use 3 gig system memory and ignore the video memory or say use all 2 gig video memory and ignore the system memory?

Some of the games I will be using in XP can use 1 gig of video memory. So I want to be able to tell XP to use 1 gig system memory at least, how do I achieve this end.

Are there utilities to help configure memory in XP x86 when it has more than 3 gig total? Or can it be set in XP somehow.

Any help will be appreciated.

Regards MarkL

(PS PC is a Intel dual core E8500, socket 775)
 
Solution
Don't worry about how much memory your video card has. Windows will have it memory mapped. XP (32 bit) can see up to 4 gig. It will be closer to 3.25 or 3.5 gig due to hardware like the video card being memory mapped. That still leaves plenty of memory for games. Also, in 32 bit XP, all processes are limited to 2 gig anyhow.
 


*sigh*

A 32-bit OS is limited to an address space of 4GB. This includes access to all HW busses that can be found on the system motherboard. As a result, the upper limit on addressable RAM tends to be somewhere around 3.5GB or so. The biggest eater of this 4GB of space is generally the PCI bus, which by specification must be mapped within the first 4GB of address space. GPU memory has NOTHING to do with how much addressable RAM the OS has to see.

Secondly, Win32 applications running under a 32-bit enviroment are limited to no more then 2GB of Address Space each, due to using a 31-bit field for memory allocation. As a result, no Win32 application running under Win32 can access more then 2GB of RAM, regardless of how much RAM the OS has installed under normal conditions.
 


If you use the /3g switch in your boot.ini and your program is compiled to be large address aware, a process can use up to 3 gig of space.

/3GB
This switch forces x86-based systems to allocate 3 GB of virtual address space to programs and 1 GB to the kernel and to executive components. A program must be designed to take advantage of the additional memory address space. With this switch, user mode programs can access 3 GB of memory instead of the usual 2 GB that Windows allocates to user mode programs. The switch moves the starting point of kernel memory to 3 GB. Some configurations of Microsoft Exchange Server 2003 and Microsoft Windows Server 2003 may require this switch.


http://support.microsoft.com/kb/833721
 
Solution