• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

Windows XP SP2 max memory limit?

Joined
Sep 4, 2002
Messages
964
Stupid question: I know this is somewhere in the far reaches of my own memory banks, but I can't remember what the maximum amount of RAM is that WinXP SP2 can handle.

I know that 32-bit operating systems should theoretically be able to address up to 4GB max, but I also remember hearing things over the years from people who couldn't get XP to recognize over 2GB -- or maybe it was 3GB. Anyway, can someone refresh my, er, memory?

Thanks
 
Thanks. So the "depending on your hardware" part of it really means "depending on your video card and how much memory addressing it uses up"?

Are there any other factors that would contribute to one person's seeing 2.75 and another seeing 3.75?
 
The 4 gig limit encompasses all hardware that uses address space in memory. Cache on sound cards, hd controller cards and the like as well as any hardware that reserves address space are some of the other things that takes the amount of usable ram down. Vid cards are usually the biggest culprit. Unless you are running a couple of pro grade sas/scsi/sata controllers with 512 megs of cache each in your rig. :D
 
Makes sense, thanks.

So the answer is that there is nothing inherent in the WinXP OS that limits you to less than 4GB of memory. It does theoretically support all of the 4GB of memory that a 32-bit OS can address. The only reason that you never get the full 4GB is because of overhead from hardware that uses address space.
 
Physical Address Extension allows you to use all of the memory installed on your system as long as you have XP Pro and the appropriate hardware.
 
Stupid question: I know this is somewhere in the far reaches of my own memory banks, but I can't remember what the maximum amount of RAM is that WinXP SP2 can handle.

I know that 32-bit operating systems should theoretically be able to address up to 4GB max, but I also remember hearing things over the years from people who couldn't get XP to recognize over 2GB -- or maybe it was 3GB. Anyway, can someone refresh my, er, memory?

Thanks
\
with VISTA 64 there are no limits
 
Well, actually, there is a limit, but it's 16 exabytes :D
Don't think we'll see 4-exabyte sticks anytime soon
 
Well, actually, there is a limit, but it's 16 exabytes :D
Don't think we'll see 4-exabyte sticks anytime soon
It's a tighter limit than that. Probably 8-16 GB.

Microsoft limits maximum RAM, like they do maximum concurrent connections for licenses. There is a table somewhere. MS limits Home editions, business editions, server editions to different amounts. Gives them a model for charging more for different versions so someone can't just take a low-end business license and effectively turn it into a server or beefy database machine.

googled:
http://www.mydigitallife.info/2007/...-maximum-supported-ram-physical-memory-limit/
 
OK, right, I guess I was just talking theoretical limits again, which should be 16 exabytes for a 64-bit OS.
 
4.2 billion, or 4.2 Gigabytes.

There is an option for PAE which extends the physical hardware addressing to 36 bit, which allows for something like 64-128 Gigs of memory, but thats about the limit for 32 bit hardware.
 
Physical Address Extension allows you to use all of the memory installed on your system as long as you have XP Pro and the appropriate hardware.

With the introduction of SP2, PAE no longer works with XP Pro or any other XP editions with the exception of the 64bit version
 
There is an option for PAE which extends the physical hardware addressing to 36 bit, which allows for something like 64-128 Gigs of memory, but thats about the limit for 32 bit hardware.

That is just it. AMD64 allows for 52-bit physical addressing in PAE mode. So it must depend on the implementation, and how it handles translation between virtual and physical space.
 
I have 4gb installed but window's see's 3.5. 32bti xp pro. Built three other systems that have 4gb in them and windows will only see 3.5gb.
 
My understanding is no 64 bit processor uses an actual 64bit address bus because it supports a full 16 exabytes lol.
 
With the introduction of SP2, PAE no longer works with XP Pro or any other XP editions with the exception of the 64bit version

Huh? I'm running 32bit XP Pro with SP2 and as you can see, it's showing PAE enabled. Unless you mean that even with PAE it won't use the full 4GB due to limitations already explained. Although I thought that was a 32bit limit regardless of PAE being in use or not.

 
According to wikipedia:

Windows XP SP2 and later by default on NX capable processors enables PAE in order to enable NX, but limits physical address space to 32 bits for driver compatibility reasons. If PAE is enabled in the normal way, this compatibility hack is disabled on Windows Server.

So besides NX support, PAE doesn't do anything else in XP SP2.
 
So it does do something. It also makes it possible to have paging files larger than 4 GB
 
4.2 billion, or 4.2 Gigabytes.

it's actually 4.0gb even. don't forget that there are 1024 bytes in a kilobyte, 1024 kilobytes in a megabyte and so forth ;)

and iirc, the /PAE switch works in XP SP1. removed in SP2 for "compatibility" issues :rolleyes:
 
i find it hilarious xp can see terabytes of harddrive space, and only 3gb ram. oh well :)

i probably am not fulling understanding the technical aspects of it all, but thats ok :D :p
 
i find it hilarious xp can see terabytes of harddrive space, and only 3gb ram. oh well :)

i probably am not fulling understanding the technical aspects of it all, but thats ok :D :p


32bit versions of nix, and the Mac OS's suffer the same problem without their own version of pae enabled.
 
Why couldn't MS windows XP pro 32Bit just put to 4GB of ram why put it only to 3GB?

Its a big rip-off from MS again
 
Why couldn't MS windows XP pro 32Bit just put to 4GB of ram why put it only to 3GB?

Its a big rip-off from MS again

its not physically possible to do so on a 32-bit architecture. thats one instance in which it wasn't microsoft's licensing schemes to blame
 
its not physically possible to do so on a 32-bit architecture. thats one instance in which it wasn't microsoft's licensing schemes to blame

It is very possible. That is why pae was mentioned. pae allows the cpu to go well beyond 4 GB. Microsoft blames bad drivers for the limitation they have built into it.
 
Why go to 64bit? not all software can run on it or the drivers and the games they are 32bit so why force us to go 64bit?

Like I should have said it was possible for MS to take out the limits from XP and give us the 4GB max of memory? So why bulid windows Vista 32bit with DX10 and give us limits again on the memory? just another rip-off
 
It is very possible. That is why pae was mentioned. pae allows the cpu to go well beyond 4 GB. Microsoft blames bad drivers for the limitation they have built into it.

From this article here:
http://dansdata.com/askdan00015.htm

PAE's no good to the everyday 3Gb-problem-afflicted user, though, for two reasons.

First, it presents 64-bit addresses to drivers, and thus causes exactly the same compatibility problems as a proper 64-bit operating system, except worse, because now you need PAE-aware drivers for 32-bit Windows, instead of just plain 64-bit drivers for a 64-bit OS. From a normal user's point of view, PAE gives you the incompatibility of a 64-bit operating system when you're still running a 32-bit OS.

For this reason, Microsoft changed the behaviour of the /PAE option in almost all versions of WinXP as of Service Pack 2. They fixed the endless driver problems by, essentially, making /PAE in XP not do anything. All versions of WinXP except for the x64 Edition now have a hard 4Gb addressing limit, no matter what hardware you use them on and what configuration you choose.

This isn't a big problem, of course, since XP is not meant to be a server operating system. But it's still mystifying to people who try the /PAE flag and can't figure out why it doesn't work.

Oh, and just in case you for some reason still wanted to try PAE: It eats CPU time, too.

@ matrix563
XP, as with most 32bit OSes I believe, can only see up to 2TB of hard drive space. Just an FYI.
 
About "PAE eats CPU time", I believe installing a 64-bit OS will eat even more time, since the page translation gets even more complex.

The harddrive limitation is something else than memory addressing. It is tied to the partition table structure. 32-bit Vista supports GPT, which can handle rather large drives
 
I'm having the same issue, 4gb and only seeing 3gb. Should I just take out a 1gb stick? Or leave it in for dual channel purposes?
 
About "PAE eats CPU time", I believe installing a 64-bit OS will eat even more time, since the page translation gets even more complex.

There's not. The reason you take a performance hit with PAE is that it's rube goldbergesque setup that requires extra instructions in the application to make the CPU switch between different 4gb banks of memory. WIth x86-64 the full memory capacity is directly addressable by the OS at once and it can do the same 1:1 translation is does when virtualizing the 32bit address space.
 
It's a tighter limit than that. Probably 8-16 GB.

Microsoft limits maximum RAM, like they do maximum concurrent connections for licenses. There is a table somewhere. MS limits Home editions, business editions, server editions to different amounts. Gives them a model for charging more for different versions so someone can't just take a low-end business license and effectively turn it into a server or beefy database machine.

googled:
http://www.mydigitallife.info/2007/...-maximum-supported-ram-physical-memory-limit/

Interesting. This actually sorta makes a case for buying vista ultamate if you're interested in a power user system and don't want to ugprade to windows7 as soon as it comes out (or expect it to be significantly delayed). Currently a high end vista box should have 4gb, the 2 moores laws doublings between now and windows7's 2011 release target will bring you upto the 16gb home premium limit. IF it's delayed or you want to hold off a year or two for SP1 the high end target's going to be shifting to 32gb and you'll be left out in the cold.
 
There's not. The reason you take a performance hit with PAE is that it's rube goldbergesque setup that requires extra instructions in the application to make the CPU switch between different 4gb banks of memory. WIth x86-64 the full memory capacity is directly addressable by the OS at once and it can do the same 1:1 translation is does when virtualizing the 32bit address space.

No, you misunderstand how it works. There is no switching involved. You just have another page table structure. Non-pae is a two layer model. PAE is three layers, and 64-bit is four layers.
 
i find it hilarious xp can see terabytes of harddrive space, and only 3gb ram. oh well :)

i probably am not fulling understanding the technical aspects of it all, but thats ok :D :p

RAM is byte addressable, which means that each possible combination of 1's an 0's on the address bus will give the CPU access to exactly 1 byte.

2^32 = 4,294,967,296 possible addresses * 1 byte per address = 4,294,967,296 bytes (or 4.0 gigabytes)

Drive's are sector addressable. Sectors on most hard drives are 512bytes. That's the minimum the CPU is going to get when it requests data from the drive because the next address value is going to send the next 512 bytes, and so on.

2^32 = 4,294,967,296 possible addresses * 512 bytes per address = 2,199,023,255,552 bytes (or 2 terabytes).

Of course that overly simplified since the CPU doesn't directly access the hard drive, but instead sends that sector request as a string of data to the controller. But I think it gets the point across.
 
Drive's are sector addressable. Sectors on most hard drives are 512bytes. That's the minimum the CPU is going to get when it requests data from the drive because the next address value is going to send the next 512 bytes, and so on.

2^32 = 4,294,967,296 possible addresses * 512 bytes per address = 2,199,023,255,552 bytes (or 2 terabytes).

Of course that overly simplified since the CPU doesn't directly access the hard drive, but instead sends that sector request as a string of data to the controller. But I think it gets the point across.

I think it is a wrong point. You cannot compare memory addressing with addressing sectors, at all. And nowdays you use 48 bit to address sectors
 
But you might juse confuse a lot of people, and make them think that there is a connection.

The same could be said about ip addresses. Because you're running 32-bit, you're stuck with ipv4, and cannot upgrade to ipv6
 
But you might juse confuse a lot of people, and make them think that there is a connection.

The same could be said about ip addresses. Because you're running 32-bit, you're stuck with ipv4, and cannot upgrade to ipv6

The only difference is RAM is directly accessed through an address bus, but the CPU has to send the drive controller information on what sector it's wanting as data packets on the data bus.
 
Back
Top