Windows XP with 6GB of RAM -will it cause any problems?

adlep

Diamond Member
Mar 25, 2001
5,287
6
81
Windows 7 is great and I am installing a 64-bit copy of 7 Ultimate on a separate hard drive for a dual boot configuration with trusty XP.

I am going to be switching back and forward between them quite a lot for the next month and therefore I have a question:

I have 3GB of DDR2 now and I am about to install more today to a grand total of 6GB for Win 7 64.
But will it affect overall stability of XP 32 bit?
I am fine with the fact that XP won't see all of the RAM - because of the 32-bit architecture limitation, but I am concerned about potential BSODs associated with XP freaking out about too much of it...
?
 

Red Squirrel

No Lifer
May 24, 2003
70,448
13,746
126
www.anyf.ca
You should be fine, but you'll only be able to use 3.5GB of ram in XP. XP 64-bit is an option, but I hear it's not stable. (have not tried it myself though)
 

adlep

Diamond Member
Mar 25, 2001
5,287
6
81
You should be fine, but you'll only be able to use 3.5GB of ram in XP. XP 64-bit is an option, but I hear it's not stable. (have not tried it myself though)

Yeah, I know about the 3.5GB limitation for XP and I am fine with it. But will too much RAM that it can not address be a problem?
 

dguy6789

Diamond Member
Dec 9, 2002
8,558
3
76
No problems. You won't be able to use it, but it won't cause any problems either. XP 64 is very stable, the problem is there are less drivers available for it than XP 32 or any version of Vista or 7.
 

Gamingphreek

Lifer
Mar 31, 2003
11,679
0
81
You should be fine, but you'll only be able to use 3.5GB of ram in XP. XP 64-bit is an option, but I hear it's not stable. (have not tried it myself though)

3.5GB Total addressable. Only <2GB per process though. No one process can consume more than 2GB.

Why are you dual booting XP and Win 7?? The only reason you might need XP for nowadays is application compatibility - in which case Win 7 has an XP Virtual Machine pre-installed.

-Kevin
 

adlep

Diamond Member
Mar 25, 2001
5,287
6
81
3.5GB Total addressable. Only <2GB per process though. No one process can consume more than 2GB.

Why are you dual booting XP and Win 7?? The only reason you might need XP for nowadays is application compatibility - in which case Win 7 has an XP Virtual Machine pre-installed.

-Kevin

I need time to transfer data and apps. My photoshop disks are gone somewhere, and there are also some other apps that I use from time to time that there is no way I will be able to reinstall.
I had XP for 7 years man. That is a looong time.
 

Red Squirrel

No Lifer
May 24, 2003
70,448
13,746
126
www.anyf.ca
3.5GB Total addressable. Only <2GB per process though. No one process can consume more than 2GB.

Why are you dual booting XP and Win 7?? The only reason you might need XP for nowadays is application compatibility - in which case Win 7 has an XP Virtual Machine pre-installed.

-Kevin

Actually I always figured it was 3MB per app, but you appear to be right, I Just ran a test out of curiosity and I was unable to allocate more then 1906MB. There's probably some overhead not accounted for in there.

For those curious...

Code:
#include <fstream>
#include <iostream>

using namespace std;


void WriteNum(int num)
{
    fstream fout("MB.txt",ios::out);
    fout<<num<<"MB";
    fout.close();    
}


int main()
{    
    unsigned long int i=0;
    
    while(1)
    {
        char * nomnomnom = new char[1048576]; //eat one MB of ram
        i++;
        WriteNum(i);           
        cout<<"\rEating "<<i<<"MB...";     
    }   
	
	return 0;
}


I'm going to go try this on my 64-bit server now. :D
 

LxMxFxD4

Senior member
Oct 6, 2007
359
0
0
Just out of curiosity are you aware that windows 7 has an XP compatability mode? You have to d/l it separately from the net, so you'll have to google it, but that might save you a lot of headaches of switching, possibly.

Just thought you should know.
 

Gamingphreek

Lifer
Mar 31, 2003
11,679
0
81
Actually I always figured it was 3MB per app, but you appear to be right, I Just ran a test out of curiosity and I was unable to allocate more then 1906MB. There's probably some overhead not accounted for in there.

For those curious...

Code:
#include <fstream>
#include <iostream>

using namespace std;


void WriteNum(int num)
{
    fstream fout("MB.txt",ios::out);
    fout<<num<<"MB";
    fout.close();    
}


int main()
{    
    unsigned long int i=0;
    
    while(1)
    {
        char * nomnomnom = new char[1048576]; //eat one MB of ram
        i++;
        WriteNum(i);           
        cout<<"\rEating "<<i<<"MB...";     
    }   
	
	return 0;
}


I'm going to go try this on my 64-bit server now. :D

Actually now that I think about it, I believe on a 32bit machine, only 2GB is addressable in Windows when running with 4GB of RAM.

You have 2GB for userspace and 2GB for kernel space. If you enable the large address support, then I believe you can expand it to 3GB and shrink the kernel space to 1GB, but that is unwise.

-Kevin
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Actually I always figured it was 3MB per app, but you appear to be right, I Just ran a test out of curiosity and I was unable to allocate more then 1906MB. There's probably some overhead not accounted for in there.

For those curious...

I'm going to go try this on my 64-bit server now. :D

The default for a 32-bit process is 2G of VM regardless of the version of Windows. You can move it up to 3G by using the /3GB kernel switch, but this restricts the kernel's VM to 1G and can cause some problems with drivers. Also, even with the /3GB switch you still need to mark each binary that you want to have 3G of VM as LargeAddressAware, by default every process is still limited to 2G of VM. And yes, you got just under 2G because the binary itself, shared libraries, process stack, etc are all mapped into the same address space.
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
The default for a 32-bit process is 2G of VM regardless of the version of Windows. You can move it up to 3G by using the /3GB kernel switch, but this restricts the kernel's VM to 1G and can cause some problems with drivers. Also, even with the /3GB switch you still need to mark each binary that you want to have 3G of VM as LargeAddressAware, by default every process is still limited to 2G of VM. And yes, you got just under 2G because the binary itself, shared libraries, process stack, etc are all mapped into the same address space.
Just so we're clear, /3GB is only needed on 32bit kernels. On 64bit kernels, applications that are LargeAddressAware automatically get access to 4GB of address space.
 

pmv

Lifer
May 30, 2008
15,142
10,033
136
You should be fine, but you'll only be able to use 3.5GB of ram in XP. XP 64-bit is an option, but I hear it's not stable. (have not tried it myself though)

Is it not the case that that 3.5 includes your video card's memory, so you end up using even less system memory?
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Is it not the case that that 3.5 includes your video card's memory, so you end up using even less system memory?

The total amount of addresses used by the system varies from system to system because some amount is used by every device, I don't think it's usually a 1:1 ratio for video memory though. You end up with 4G minus whatever your hardware requires, so you could have 3.9G or less than 2G depending on what's in your machine.
 

ViRGE

Elite Member, Moderator Emeritus
Oct 9, 1999
31,516
167
106
The total amount of addresses used by the system varies from system to system because some amount is used by every device, I don't think it's usually a 1:1 ratio for video memory though. You end up with 4G minus whatever your hardware requires, so you could have 3.9G or less than 2G depending on what's in your machine.
It's usually 256MB per video card, but I've seen it vary some. I've never seen a system with more than 3.5GB available though.
 

OVerLoRDI

Diamond Member
Jan 22, 2006
5,490
4
81
You should be fine, but you'll only be able to use 3.5GB of ram in XP. XP 64-bit is an option, but I hear it's not stable. (have not tried it myself though)

Not true. XP 64-bit wasn't very good when it first came out due to poor driver support. Now that 64bit OSes are becoming common place it is a great OS and just as stable as XP 32. It it is a strange niche OS though, the video and a few other drivers are not the same as Vista 64bit, so you may or may not run into strange compatibility issues depending on your hardware. If you have relatively common hardware you won't have any issues than you would with any other 64bit OS.

To answer the OPs question, it won't cause any problems, XP 32bit just won't see all the available memory.
 

Red Squirrel

No Lifer
May 24, 2003
70,448
13,746
126
www.anyf.ca
Not true. XP 64-bit wasn't very good when it first came out due to poor driver support. Now that 64bit OSes are becoming common place it is a great OS and just as stable as XP 32. It it is a strange niche OS though, the video and a few other drivers are not the same as Vista 64bit, so you may or may not run into strange compatibility issues depending on your hardware. If you have relatively common hardware you won't have any issues than you would with any other 64bit OS.

That is good to know. I've always wanted to upgrade to XP 64 but I kept hearing it was unstable. I might give it a try next time I need to do a format.
 

Eddie313

Senior member
Oct 15, 2006
634
0
71
You should be fine, but you'll only be able to use 3.5GB of ram in XP. XP 64-bit is an option, but I hear it's not stable. (have not tried it myself though)


I had a couple of servers i have built with XP x64 bit and one is stilling running afters 2 years non stop Its very strong os. As for gaming i have ran it on a sli box no problems there either.
 

Ken g6

Programming Moderator, Elite Member
Moderator
Dec 11, 1999
16,682
4,633
75
I've heard that some ramdisk programs can use the memory above 4GB. This seems to be one. One way to use all that memory would be to put your swapfile on the ramdisk.

Edit: More info here and something free that might or might not work here.
 
Last edited:

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
That is good to know. I've always wanted to upgrade to XP 64 but I kept hearing it was unstable. I might give it a try next time I need to do a format.

I still don't understand why an almost decade old OS would even be a consideration these days.
 

hanspeter

Member
Nov 5, 2008
157
0
76
Actually now that I think about it, I believe on a 32bit machine, only 2GB is addressable in Windows when running with 4GB of RAM.

You have 2GB for userspace and 2GB for kernel space. If you enable the large address support, then I believe you can expand it to 3GB and shrink the kernel space to 1GB, but that is unwise.

User space and kernel space belongs to the virtual address space. Those sizes are not related to the size of the physical address space (where your ram lives).
 

adlep

Diamond Member
Mar 25, 2001
5,287
6
81
Interesting discussion.
Heads up, I have both XP and 7-64 bit installed now on two separate physical hdds with 6GB of RAM.
7 sees all of it, XP shows only 3GB - which is fine.
Other than that, there is no side effects whatsoever. It might sound like a heresy, but for now, I still like my XP more.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Because it still works and still does what I need it to do, and as long as I keep using it, I don't need to spend money to upgrade my computer.

I was under the impression that XP 64/32-bit keys weren't interchangable like they ware with Vista/W7. But I could be wrong, XP64 was more of a proof-of-concept or stop gap release than anything else IMO.