XP 32Bit and RAM

Associate
Joined
19 May 2004
Posts
1,037
Location
Horsham, West Sussex
I've been doing some research and I'd like to check that my understanding is correct.

Because my windows is 32bit it can only address 4 Gig seperate address (2^32).

Now some of these addresses are needed to talk to hardware - PCI cards, mobo bits, NIC, Soundcard etc.

Also some addresses are needed to address video memory - I assume the amount put aside depends on the amount of video memory you have - my GFX has 320MB.

Once all those addresses have been sorted out, what is left can be used for RAM.

This seems to be reported as somewhere between 2.5GB and 3.25GB.

Have I got it correct?

Thanks,

Nigel
 
Thanks,

So with my graphics card I should have 3Gb or more available.

But can Windows XP use anything above 2GB. The Microsoft site states that the address space is split between 2GB for application and 2GB for system.

There is also a 3GB switch which you need to set in the boot.ini but assuming I set that switch will the extra 1GB be usable?

Cheers,

Nigel
 
There is also a 3GB switch which you need to set in the boot.ini but assuming I set that switch will the extra 1GB be usable?

Nigel

Posted at the same time :) , I think I've read that using that switch can cause problems with some programs and should be uneccessary unless used for specific purposes
ie allow database servers to maintain more data in memory than 2GB user space
 
I've got a problem with my RAM in XP 32bit, anyone any ideas as to why my setup is only showing 2.5GB of RAM?

I've got 4GB of RAM installed and my graphics card is 512mb. By my reckoning it should display about 3GB in Windows, but it isn't!

Does anyone know why it is doing this? I know all 4GB is there as I have previously run Vista and it is had addressed all 4GB.

My setup is ...

Q6600
Gigabyte EP43-S3L (using on board sound)
512MB Geforce7800 GTX
750GB HDD
On XP Pro 32Bit, updated with latest SP and all windows updates.
 
Last edited:
I've got a problem with my RAM in XP 32bit, anyone any ideas as to why my setup is only showing 2.5GB of RAM?

I've got 4GB of RAM installed and my graphics card is 512mb. By my reckoning it should display about 3GB in Windows, but it isn't!

Does anyone know why it is doing this? I know all 4GB is there as I have previously run Vista and it is had addressed all 4GB.

What other stuff do yo have plugged into your system. Every sort of memory is counted. So If your sound card has 64Mb on it that will come out of the 4Gb, its the same for every sort of PCI/PCI-E card
 
I use on board sound, the only thing plugged into the motherboard is my PCI-e graphics card. As far as i'm aware the on board sound doesnt allocate any RAM to itself.
 
@CDj - FWIW I have a GA-E7AUM-DS2H motherboard which uses a NVidia 9400 IGP. The graphics share the memory with the main RAM and I have allocated 256mb to it for my HTPC.

With a 32bit OS (either XP or Vista) I see 2.5GB. Windows Vista 32 when you show your basic information shows 4GB but task manager shows 2.5GB.

With 64bit Vista I see 3.5GB.

Even with 64bit Vista it is using more memory than just the 256mb allocated, twice that actually. But with 32bit windows I would not have expected it to show as little as it does.

I am sure there is some explanation, might involve the way that the memory is being addressed with a 32bit OS and that chipset, that might account for it but I have to use a 32bit OS on my HTPC as the drivers are carp for my Pinnacle 7010ix TV card for 64bit Vista.
 
Last edited:
My motherboard doesnt have on board graphics though, so I can't understand why its showing as low as 2.5GB. It should be 3GB at least I'd have thought.
 
I understand but even though I allocate 256mb of my 4GB of memory I would have thought that I would be able to use more than 2.5GB being available when booted to the desktop on a 32bit OS.

With a 64bit OS it is as expected, the same as you are noting.

The PC I'm using now has 32bit Vista with 4GB of memory and a 4870 512mb graphics card and it is showing 3.5GB of memory to allocate at the desktop.
 
Last edited:
Thanks,

So with my graphics card I should have 3Gb or more available.

But can Windows XP use anything above 2GB. The Microsoft site states that the address space is split between 2GB for application and 2GB for system.

There is also a 3GB switch which you need to set in the boot.ini but assuming I set that switch will the extra 1GB be usable?

Cheers,

Nigel

Becarefull when using this switch. When installing 4GB of memory to a 32bit OS, it allocates 2GB to Windows (including drivers) and 2GB to applications. By giving you applications more memory you decreasing the amount of memory allocated for drivers and memory mapping. This will cause system instability.
 
No expert but from my research I think the following is true

Most Modern MoBo uses 0.5Gb to address PCI

The next obvious one is your graphics card - say 0.5GB

Then you've got all the other stuff - USB, Mobo, Sound, Lan, Firewire etc.

So with most decent MoBo and Gfx setups I think yo'll going to see between 2.5GB and 3GB.

Don't think of it as losing memory because you are using it as memory. You are losing it because the address space is being used by something else so can't be used by your RAM.

So if your gfx has 512MB you will still lose 512MB of system RAM - this isn't because the system RAM is being used by the graphics card it's becuse the address lines are used for the gfx card memory so your system memory can't use them, so it just sits there unused.

I still don't have a clear answer to my question though.

If I manage to get 3GB, how can the extra 1GB be used - everything I've read suggests that windows XP32 apps can't use anything above 2GB.

So is the 1GB sitting there as addressable RAM but nothing can make use of it?

Cheers,

Nigel
 
@CDj - FWIW I have a GA-E7AUM-DS2H motherboard which uses a NVidia 9400 IGP. The graphics share the memory with the main RAM and I have allocated 256mb to it for my HTPC.

With a 32bit OS (either XP or Vista) I see 2.5GB. Windows Vista 32 when you show your basic information shows 4GB but task manager shows 2.5GB.


You need to see what's being mapping:

run devmgmt.exe

View > an click on memory type.
You'll be suprised

Of course, this may not be happing in Vista 64bit if you have Memory Remap feature disabled.
 
I still don't have a clear answer to my question though.

If I manage to get 3GB, how can the extra 1GB be used - everything I've read suggests that windows XP32 apps can't use anything above 2GB.

So is the 1GB sitting there as addressable RAM but nothing can make use of it?

Cheers,

Nigel

Is the memory remap enabled in BIOS?
 
You have to have an application that can make use of the addittional address space.
More importantly you have halved your system resources with /3gb switch, this in itself will cause problems particularly for NonPaged memory access used by drivers
 
You need to see what's being mapping:

run devmgmt.exe

View > an click on memory type.
You'll be suprised

Of course, this may not be happing in Vista 64bit if you have Memory Remap feature disabled.


Good suggestion, I hadn't thought of that...




I will try and find, if possible, a utility similar to the sysinternals suite, that could breakdown those hexadecimal (?) memory addresses to see how the allocations is accumulating to only leave 2.5GB available for a 32bit OS to allocate.
 
Back
Top Bottom