# Unlocking Full RAM on Win XP X86



## canivari

If you have 4GB of RAM or more and you are running Windows XP 32Bits
there is a trick to adress all the physicall RAM under the Windows
and start running in 36Bits so he can manage all the RAM until 64GB of 
physicall RAM installed:

Note: Microsoft blocked the Operating Systems until the 4GB of RAM because there are some drivers that dont load or can create BSODs at the startup because they cant manage very well with the OS operating at 36 Bits.
So if you gonna try this make sure you have back up everything in your computers first.

So, what you need is to enable an Program in XP so he can boot with your physicall RAM (until 64GB) and that program is PAE (Physical Address Extension mode)and to do that just need to :

edit c:\boot.ini with notepad

Change something like:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /NOEXECUTE=OPTIN /FASTDETECT

To:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /NOEXECUTE=OPTIN /FASTDETECT /PAE

Save and reboot. You should now see (and use) the total of your physicall RAM because its now running in a 36-bit mode.


----------



## tyttebøvs

That will not work. Microsoft still has a 4GB limitation in the kernel.


----------



## tyttebøvs

To make a note: The "noexecute" option is dep-related (default). DEP invokes the pae kernel (so you don't even need the switch).

And with pae comes some of the problems you describe, which is why they limited the pae kernel to 4GB.


----------



## CrayonMuncher

you posted this a few days ago here

http://www.computerforum.com/166823-unlocking-full-ram-vista-x86-win7.html

and it has alreadly been discussed


----------



## tyttebøvs

The other thread is actually about modifying the kernel to remove the limitation. That exe might or might not do it, and might or might not contain unwanted stuff.


----------



## linkin

Someone here used it and stated it was clean. that was one of the other threeads though.

If i still had a WinXP machine and 4gb of ram in it i might have tried it, but i have no need now.


----------



## tyttebøvs

linkin93 said:


> Someone here used it and stated it was clean


And to just trust that is very, very, very, very, very, very, very, very ... very, very, very dangerous.


----------



## Motoxrdude

tyttebøvs said:


> That will not work. Microsoft still has a 4GB limitation in the kernel.



Not saying it will work, but xp does not have a ram limitation. It's just the whole 32bit memory addressing problem.


----------



## tyttebøvs

Motoxrdude said:


> Not saying it will work, but xp does not have a ram limitation. It's just the whole 32bit memory addressing problem.


But it really is a limitation defined by Microsoft.


----------



## whs

What a hoax!!!


----------



## canivari

tyttebøvs said:


> That will not work. Microsoft still has a 4GB limitation in the kernel.





tyttebøvs said:


> And to just trust that is very, very, very, very, very, very, very, very ... very, very, very dangerous.





Motoxrdude said:


> Not saying it will work, but xp does not have a ram limitation. It's just the whole 32bit memory addressing problem.





tyttebøvs said:


> But it really is a limitation defined by Microsoft.





whs said:


> What a hoax!!!



So, gentlemans my question is:

If the X86 OS got an limitation of nearly 4GB of Ram, how can an Windows Server 2003 32bits Datacenter Edition can physicaly manage up to 128GB of RAM with PAE enabled as you can see on MSDN at microsoft under 
"Physical Memory Limits: Windows Server 2003"
 with short description right above and i quote:
 "The following table specifies the limits on physical memory for Windows Server 2003. Limits over 4 GB for 32-bit Windows assume that PAE is enabled."

Link for MSDN from microsoft:
http://msdn.microsoft.com/en-us/library/aa366778(VS.85).aspx

Do you think that microsoft have been lying to theyre clients until now?
If you read carefully that page you can see that is an somewhat licensing
problem in each X86 (32 Bit) version of Windows isnt it?
So, as i said before, the only limit gentlemens is that some drivers that were designed for windows XP just cant load or got corrupted when you enable PAE. Since a few years that Intel (dont know about AMD or other brands) have been making their CPUs allready with 36Bits extensions so that the RAM can go until 128GB of RAM (even if the PAE only manage until 64GB,isnt more than enough??).
The name PAE (Physicall Adress Extension) says everything (Let the entensions (in this case 36Bits)from CPU manage the Physicall RAM because windows it self isnt an 32Bit OS is OS that was produced for 32Bit CPUs but if the CPUs can manage more than 32Bits you only need to unblock the OS so the CPU can manage the rest.

At the moment i am running my system with Window 7 X86 with PAE enabled and physically i got 8GB RAM DDR2 667Mhz Fully Bufered with that patch that i putted here in the forum e few days ago for you and i can tell you that  is not a trick.
I ve been using SQL databases, virtualization , hardware testers, loading my RAM until the limits and so far not even 1 error as you can see an printscreen of my desktop from a few days ago here:

http://i777.photobucket.com/albums/yy57/canivari/Untitled.png

So, if you still think that isnt possible, i say it is.
Hell, even Microsoft says its possible...
But with PAE enabled!


----------



## tyttebøvs

I am saying that altering the boot.ini under xp will give you nothing more than what you already had.


----------



## canivari

tyttebøvs said:


> I am saying that altering the boot.ini under xp will give you nothing more than what you already had.



So, if is not working in your machine,try to force it like this:

At the moment you boot.ini is looking something like this:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /NOEXECUTE=OPTIN /FASTDETECT /PAE

Change iit to:

To:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /NOEXECUTE=OPTIN /FASTDETECT /force PAE


(had the force before PAE and dont forget the space)
Reboot your machine and give it a try.

If it still doesnt boot with all your Physicall RAM you can try the switch that Microsoft uses (BUT YOU NEED TO HAVE MORE THAN 5GB OF RAM TO USE THIS ONE !!) to test all theire 32Bit OSs :

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /NOEXECUTE=OPTIN /FASTDETECT /nolowmem


----------



## canivari

Take a look in what i was talking about PAE and Intel CPUs to adress more than 4GB of RAM here:

http://www.microsoft.com/whdc/system/platform/server/PAE/PAEdrv.mspx


----------



## tlarkin

tyttebøvs said:


> I am saying that altering the boot.ini under xp will give you nothing more than what you already had.



I agree, you can make it display that it has 4Gigs of RAM, but in reality it will not utilize it.  If I recall, windows 98 could display in system properties that it had more than 512MB of RAM but it could not address more than 512MB of RAM.


----------



## tyttebøvs

You still haven't read what Microsoft says about PAE in Windows *XP*.


----------



## tyttebøvs

Also, if the switch worked, why would you begin to apply a patch to the kernel in your Vista to gain access to memory above 4G?


----------



## canivari

tlarkin said:


> I agree, you can make it display that it has 4Gigs of RAM, but in reality it will not utilize it.  If I recall, windows 98 could display in system properties that it had more than 512MB of RAM but it could not address more than 512MB of RAM.



Have you stress all the 4GB of RAM that is showing now and see if it uses or not?


----------



## canivari

tyttebøvs said:


> Also, if the switch worked, why would you begin to apply a patch to the kernel in your Vista to gain access to memory above 4G?



Heres the problem and why you need to patch the Vista kernel:

http://www.remkoweijnen.nl/blog/2009/06/23/patch-vistas-kernel-to-address-more-than-4-gb-of-memory/


----------



## tyttebøvs

And why don't you think it would be necessary to patch the xp kernel for it to do the same?


----------



## tyttebøvs

The pae kernel in xp/vista/win7:

"Ignore memory above 4G"

The Geoff Chappell dude then found a way to wipe out that "Ignore memory above 4G" in Vista. You would need to do the same in xp.


----------



## canivari

tyttebøvs said:


> And why don't you think it would be necessary to patch the xp kernel for it to do the same?



I didnt had time to check the "why" but looks like its all because microsoft want us to use X64 OS with RAM above 4GB on Workstations thats all there is.
But at the same time microsoft dont sell the license to upgade Windows XP 32Bis with 4GB or above of RAM.
Its weird the entire idea.
And also i really not saying that is possible to work in all Computers this kind of switchs with XP to un XP X86 with all physicall RAM enabled, but it opens new horizons in X86 OSs so we (gammers and enthusiastics) can have the possibility to choose if we want to run X86 OSs or X64 OSs.


----------



## tyttebøvs

canivari said:


> And also i really not saying that is possible to work in all Computers this kind of switchs


And my point is: that switch will not work in any computer.


----------



## tlarkin

canivari said:


> I didnt had time to check the "why" but looks like its all because microsoft want us to use X64 OS with RAM above 4GB on Workstations thats all there is.
> But at the same time microsoft dont sell the license to upgade Windows XP 32Bis with 4GB or above of RAM.
> Its weird the entire idea.
> And also i really not saying that is possible to work in all Computers this kind of switchs with XP to un XP X86 with all physicall RAM enabled, but it opens new horizons in X86 OSs so we (gammers and enthusiastics) can have the possibility to choose if we want to run X86 OSs or X64 OSs.



It's called a business model, and it makes sense in the idea of it making them more money to sell it in different models like that.  32bit memory addressing is part of the limitation itself, but the other part is that MS codes their kernel in that matter.

I am not a developer so I am not going to claim I understand the intricacies of how this actually works or is coded.  However, I do understand Microsoft is better at business than they are software development.


----------



## canivari

tlarkin said:


> It's called a business model, and it makes sense in the idea of it making them more money to sell it in different models like that.  32bit memory addressing is part of the limitation itself, but the other part is that MS codes their kernel in that matter.
> 
> I am not a developer so I am not going to claim I understand the intricacies of how this actually works or is coded.  However, I do understand Microsoft is better at business than they are software development.



LOL... i agree with you on that one...


----------



## canivari

The Guy that unlocked the Kernel on Vista:
take an look:

http://www.geoffchappell.com/viewer.htm?doc=notes/windows/license/memory.htm


----------



## canivari

tyttebøvs said:


> And my point is: that switch will not work in any computer.



You are right,
I just readed here:

http://www.geoffchappell.com/viewer.htm?doc=notes/windows/license/memory.htm

that this switchs only worked with XP SP1 because after the upgrade for SP2, microsoft
released a new Kernel that blocks the RAM above the 4GB.
I still gonna try to find kernel patchs for SP2 and SP3 for us.
Stay tunned...


----------



## Aastii

I wouldn't do that on my system even if I was desperate for 4gb+ memory for some strange reason


----------



## tyttebøvs

canivari said:


> that this switchs only worked with XP SP1 because after the upgrade for SP2, microsoft
> released a new Kernel that blocks the RAM above the 4GB.


And even before SP2 you could only use PAE to get 4GB usable ram. So you couldn't install like 6GB and get all of it usable.


----------



## canivari

tyttebøvs said:


> And even before SP2 you could only use PAE to get 4GB usable ram. So you couldn't install like 6GB and get all of it usable.



What about the /nolowmem  switch before the SP2?
it was used to run XP with more than 5GB of RAM and made them usable..
Microsoft used this switch to test X86 OSs with SP1 to test (Drivers i think)
Anyway, what if we managed to get the Kernel from SP1 copy it to a machine
with SP2 or SP3 installed and change the boot.ini to dual Kernel boot 
so we could use the /PAE switch along with /nolowmem switch? (because te /nolowmem switch only works with /PAE enabled
Does this make any sense?
The  "patch" that the other guy made for VISTA and Win7 is nothing more than
this but the only diference was that Windows already had the 2 Kernels in the system root.


----------



## tyttebøvs

The patch is a programcode modifier. It changes how the kernel works. That you cannot do with a switch in boot.ini.


----------

