• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Win XP pro only can take 3GB of RAM max????

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

malvindo

Member
Joined
Sep 21, 2004
as above
is that true?
my friend told me that Windows XP Pro only can support 3 GB of RAM?
any 1 can confirm???

thx in advance
 
The max RAM Windows XP Pro can support is 4 GB, which is enough for anybody.
 
Here are the OS maximums for popular versions of Microsoft Windows.

Windows 95: 1GB
Windows 98: 1GB
Windows 98SE: 1GB
Windows ME: 1.5GB
Windows NT: 4GB
Windows 2000 Professional: 4GB
Windows 2000 Advanced Server: 4GB or 8GB with PAE enabled
Windows 2000 Datacenter Server: 4GB or 64GB with PAE enabled
Windows XP Home: 4GB
Windows XP Professional: 4GB

Taken from http://www.researchut.com/docs/meminfo.html
 
When you have above 3 GB, the excess is reserved for system devices, hardware and such. I'm not sure if this is an artifact of XP or of 32-bit systems in general. I'm not 100% sure this is the correct explanation, but its the gist I picked up from researching DH800 stuff, since a few users who've maxed out their RAM faced this "issue".
 
mateo said:
When you have above 3 GB, the excess is reserved for system devices, hardware and such. I'm not sure if this is an artifact of XP or of 32-bit systems in general. I'm not 100% sure this is the correct explanation, but its the gist I picked up from researching DH800 stuff, since a few users who've maxed out their RAM faced this "issue".
I do not recall if x86 still uses port-mapped I/O, that could be it, since you need address space for input-output devices too. :shrug:
 
-_{MoW}_-Assasi said:
32 Bit processors can only support 4 gigs of ram, 64 bit can support much higher, 64 gigs i recall i think

Yes, but that's known. The issue isn't whether or not 32-bit can support >4 GB, but how it addresses/handles that existing 4 GB, which might lead to the 3 GB discrepancy that the OP is asking about.
 
32 bit systems max out ammount of ram they can address at 4 gigs or something

current x86-64 systems can address up to something like 256 terabytes.
 
Operating systems based on Microsoft® Windows NT technologies have always provided applications with a flat 32-bit virtual address space that describes 4 gigabytes (GB) of virtual memory. The address space is usually split so that 2 GB of address space is directly accessible to the application and the other 2 GB is only accessible to the Windows executive software.

The maximum amount of memory that can be supported on Windows XP Professional is 4 GB.
The virtual address space of processes and applications is still limited to 2 GB unless the /3GB switch is used in the Boot.ini file. The minimum RAM is 64 MB (128 MB recommended).

The /3GB switch allocates 3 GB of virtual address space to an application that uses IMAGE_FILE_LARGE_ADDRESS_AWARE in the process header. This switch allows applications to address 1 GB of additional virtual address space above 2 GB.

Memory Support and Windows Operating Systems
http://www.microsoft.com/whdc/system/platform/server/PAE/PAEmem.mspx


The maximum amount of memory that can be supported on Windows XP Professional 64-Bit Edition is 128 GB of RAM and 16 TB of virtual memory. The minimum RAM is 1 GB.

Microsoft Windows XP 64-Bit Edition
http://www.microsoft.com/uk/windows/editions/64bit/default.mspx
 
Mr Ed sounds like he works for Microsoft :)

Clarifications:

1) x86 in protected 32-bit mode supports up to 4GiBytes of space in the current segment. (Read: You can only address 4 gigs within the context of one task.) Ignoring the brain damaged segmentation idea, the absolute physical address in 32-bit x86 is actually no more than 40 bits and no less than 32 bits in protected mode, since the Pentium P5, which quietly implemented 40-bit address extensions, although no more than 4GiBytes of RAM are supported, again, for the reason of the segment space limit above. (This is still a dramatic improvement over the older Intel processors, which could only address 64KiByte at a time per program.)

(On x86, Linux supports up to 4GiBytes of RAM for a single user segment. (Linux Kernel Programming))

2) x86-64 systems (AMD64, EMT64T) extend the virtual address to 48 bits and NOT 64 bits. 2^48 bytes is still a crapload of bytes. The physical address remains 40 (!) bits. I would assume that some sort of memory voodoo that we haven't talked about yet in microarchitecture performs the address translation such that you can address 2^48 bytes in hardware...but 2^40 is still a lot.

(Source: AMD technical documentation.)

In case you're feeling ripped off by #2...well...you have _sort of_ been. 2^48 is >> 2^40 which, in turn, is >> 2^32. The main feature of AMD64 is the extension of registers to 64 bits, the 64-bit instruction set extension and "long mode", and the implementation of that 48-bit virtual addressing scheme.
 
Last edited:
32 bit systems max out ammount of ram they can address at 4 gigs or something
current x86-64 systems can address up to something like 256 terabytes.

close.
A 32-bit register means that 2^32 addresses, or 4.29 gigabytes of RAM, can be referenced.
A 64-bit register means that 2^64 addresses, or 18.45 BILLION gigabytes of RAM, could be referenced. (2^64=18446744073709551616)

ya know how people always say something along these lines: "windows 95? oh 2gb of HDD is PLENTY". and now today a single movie can be more than 2gb. well, if we ever get to where we need more than 18.45 billion gb of ram, i think we did something wrong, somewhere.
 
No matter what the hardware can handle it still comes down to what the operating system implements. If the OS is designed for less than the hardware was designed for then the OS says what the limits are. Sometimes clever hardware and software designs extends even the original hardware limits as in some servers with 32-bit processors are able to handle more than 4 GB of physical RAM.
 
Chrome- said:
The max RAM Windows XP Pro can support is 4 GB, which is enough for anybody.


I hear somthing about 4gb on xp causing a glitch so it only shows 3.6gb.
 
I had 4GB of RAM in my NCCH-DL but it only detected 3.5GB on POST, so Windows and Linux would only show 3.5GB, too. If I recall, someone said this was an issue with the mobo a few months back.
 
MY S2466 will take 4GB, but it will show up as 3.2 to 3.8 due to the Ram being allocated for the System and PCI devices. I play it safe. I am only at 2GB.
 
In theory, an n-bit operating system can address 2^n bytes of memory.

2^32 = 4,294,967,296
2^64 = 18,446,744,073,709,551,616

Thus, a 16 bit chip a 32 bit chip (all intel, older AMD) can address 4.2GB directly. A 64 bit chip (pretty much all current AMD's now) can address 18.45 exabytes, or 18.5 billion gigabytes. (Sometimes 4 gigabytes and 16 exabytes, depending on how you define them, 1000 or 1024.)

It's pretty unlikely in my opinion that we'll be needing access to more than 16 exabytes of data in the foreseeable future.


Just for fun, 2^128 is:
340,282,366,920,938,463,463,374,607,431,768,211,456
or 340,282,366,920,938 yottabytes. Pretty big.

Ok that's the theory. In reality, hardware manufacturers come up with clever ways to address more than that by swapping pieces of it in and out and using more involved addressing schemes.

BTW, I once had Windows ME, and it refused to access more than 512 MB of RAM. The workaround on the M$ site said "Remove the extra RAM from your system". I had to upgrade to 2K to access 768MB.
 
Back