How To Enable More Than 4GB Memory in Windows Vista and Windows 7

This article is written for 32 bit operating systems. Unless explicitly mentioned, Windows 7 and Vista refers to the 32 bit edition of the respective Operating Systems.
Couple of months back, I had blogged about a peculiar Windows 7 issue which could cause a BSOD (Blue Screen of Death) if the system had 4GB (or more) RAM. I managed to find a fix for that issue. But, I had another minor niggle to figure out. Although I paid for 4GB of RAM, Windows refused to use more than 3GB. If you have 4GB or more RAM then you are probably familiar with the following screen.

Computer Properties displayed installed memory as 4GB but at the same time stated that only 3 GB is usable. So, where did the remaining memory go?
As it turns out, chunks of your RAM are reserved for various purposes and are not available to the operating system. For example, PCI Express support will reserve 256-768 MB depending upon the graphics adapter. Due to this Windows always displays less than 4 GB RAM as the amount of usable memory. Depending upon your hardware, anywhere between 2.75 GB and 3.5 GB of RAM will be available to the OS.
But, what if you have more than 4 GB RAM? Even on a system with 32 GB RAM, 32 bit editions of Windows will display less than 4 GB of memory. This is a known limitation of the Windows Vista and 7 x86 editions.
Microsoft claims that it is not their fault and is instead a limitation of the 32 bit architecture. At first glance this seems correct. 32 bit processor using 32 bit registers should be only able to address up to 4 GB of RAM (232 = 4G). However, this is not actually true. The main reason being a feature called Physical Address Extension (PAE).
PAE makes it possible to address more than 4 GB of memory using 32 bit registers, since the registers aren’t used to store the physical address. Instead, the registers store linear addresses, which are mapped to physical addresses using the page table. This feature has been available since the days of Intel Pentium Pro. In x86 processors additional address lines are provided so that up to 64 GB can be addressed when using the PAE mode. If you want to learn more about Windows memory addressing, go through Geoff Chappell’s notes.
Windows Vista and 7 have two kernels – one which doesn’t use PAE and one which does. They are NTOSKRNL.EXE and NTKRNLPA.EXE respectively. Both of them reside within the Windows/System32 directory. Can you guess which one you are using? If you have a modern machine, then chances are that Data Execution Prevention (DEP) is enabled in your system and in that case you are already using the kernel with PAE enabled.
How to Enable More Than 4 GB Memory
Before getting started, keep in mind that this patch involves modifying the kernel. Do no proceed unless you are confident. Most security products will identify these patches as malicious since they modify the Windows kernel.
Download the appropriate patch for your system (links at the end of this post). I haven’t tried the Windows Vista patch, but I can confirm that the Windows 7 patch works. The Windows 7 patch is in Russian language. To begin patching click on the big button (refer to screenshot). After this a command prompt window should appear. Press Y.
On restarting the system, you should see two entries in the Windows Boot Menu – one being the older configuration and the other being the one with support for more than 4 GB RAM. If you don’t want to be prompted every time, press Win + R, type msconfig and hit Enter. Under the Boot tab, reduce the timeout value (to something like 3 sec). If you wish, you can simply get rid of the older configuration by deleting it. But I wouldn’t recommend this. If you get a water mark (Test Mode) on your desktop after restarting, type mcbuilder.exe in the Start Menu and press Enter.

Windows Vista Patch

Windows 7 Patch: Step 1 (Click on the button)

Windows 7 Patch: Step 2 (Press Y)
This patch will allow the OS to use more than 4 GB of memory. However, it does have a limitation – more than 3 GB of memory cannot be allocated to a single application. This patch is mainly targeted at systems with more than 4 GB of RAM. However, in some cases installing this patch on 4 GB systems will also lead to an increase in available memory (which may not necessarily result in performance improvement). This may appear to be a bit strange since Windows 7 and Vista are technically capable of addressing up to 4 GB of memory. Obviously, there is a logical explanation for this behavior. But, I won’t discuss it here. Refer to Geoff Chappell’s notes on Physical Memory Map if you wish to explore the issue in detail.
Warning: The patches described in this article are kernel patches. They may result in unexpected hardware issues and expose your system to malicious exploits.
Download Links:
4GB Memory Patch for Vista 32 bit (SP1 and SP2)
4GB Memory Patch for Windows 7 32 bit
[Image Courtesey: Brajeshwar]


i forget to say, that i did stoped windows firewall and my antivirus, please help
I ran the software.When prompted to choose the operating system, I chose “vista…(>128 gb)”.
But it didn’t start, because of a missing “PSHED.dll”.
I tried to repair the startup with the original DVD-same problem;
I tried, from the prompt, “bootrec.exe /fixmbr”
Upon a new attempt to start, I was stopped by an error at the kernel (ntkrnl…);
So I turned back at the original OS (fortunately, not damged).
Could you give me an explanation and a solution?
Thanks.
LOL Work fine and only took 2 mins to set up (just waiting to find that someone has hijacked my computer now lol)
thanks for the info (as long as no one finds my card details that is )
thanks a milion man it show 5 gb from 5 gb installed~!!!!!
thanks so mutch
damn whater mark did not disapear (i tried mcbuilder.exe)
The solution is to open CMD, as an administator, type in “mcbuilder.exe” hit enter, and reboot. It worked for me after that! Hope this helps you out.
I no longer use a 32bit edition, but I did use 32bit edition in the past with all 4GB RAM visible without problems.
Try this patch:
http://wj32.wordpress.com/2011/02/23/pae-patch-updated-for-windows-7-sp1/
It also removes the need to run in test mode.
However, it does not work for everyone, mainly due to buggy drivers.
hi. i cant patch kernel. its error messages
“can not access the file.maybe it’s in use…
please close the file before patching! try to access the file again now?”
help me please..
Is not working with Windows 7 ultimate edition. I try three times and nothing.
u can try this one, it worked 4 me
http://www.2shared.com/file/akDISJ-6/PatchPae.html
worked like a dream on my Windows 7 Ultimate 32-bit. Rebooting showed all my 8gb of ram available.
Hi.
How can i remove the patch?
Thanks
Martin
Hi, i’ll try to use the Windows Vista patch but I received alway the follow message: cannot acces the file. Maybe it’s in use… Please close the file before patching! Try to access the file again now?
I’ll have try diffent ways to make it work like: Turn of UAC, safe mode,…
Does someone have a sollution?
Many thanks!!
lasciate perdere questo articolo il processore a 32 bit non può usare più di 3 gb di ram quindi anche se usate questa patch windows vedrà che ci sono più di 4 gb di ram installati ma ne userà comunque 3 perchè l’archittettura a 32 bit non supporta più di 3 gb di ram.
I’ve been running the patch overnight, and it really feels like the windows processes are taking longer, based on the spinning blue wheel. Explorer gave me a blue wheel just to open a new instance. Really strange since there’s more memory available now.
The information given here is very interesting and useful and I would like to try using the patch. However, I would like to know if the Win 7 patch can be used on Win 7 Ultimate with SP1?
thanks for the info. I was having trouble with this wehn I wanted to upgrade but not have to but a whole new system
Wow this is REALLY cool!
I’m glad to learn that Window’s 3gb limit for 32-bit systems is only an artificial one. -.-
How can i remove it ? plzzzzzzzzzzzz telllllllllll
Yes pls tell how remove it? coz on some games after this patch my fps are very very low.
Never did, neither will, trust russian (patches).
hi
i download not
please for upload me because
I internet is limit
thank you
Hello!
Can you make patch for Windows 8 32bit?
Não consegui instalar no Windows 8 Build 9200 —–
can i use it on windows xp 32 bit system
You can install on windows 7 first, then reinstall win xp deleting windows 7, and it will still work
.But if you reinstall windows 7 you will have to run the patch again.
You can’t install within windows xp.
I’m really pleased with this patch,no problems at all applying it, but I did make a backup of my system before using the patch. Also it’s a good idea to run “msconfig” and reduce the boot timeout to 3 seconds, so as to skip the delay in boot options that the patch creates.
I had a problem after installing a game where my memory was only showing 450mb and the computer was very slow after I uninstalled the game.
In the boot, advanced, window of “msconfig” I was able to reset the memory to the full 8gb. Don’t know if this was caused by the game or the patch, but it hasn’t happened since. It’s great to be able to burn 12 dvd’s in succession without having to reboot the computer now that I can access all my ram.
I just had a friend who had this issue and we couldn’t’ figure it out. I can’t believe I didn’t think of this thanks.
I agree in part to this site, but maybe i need to think about it more
Thanx a lot men, it works great on Win7. It shows 16GB. And my problems with video reendering out of memory errors are gone.
fucking lovely, thanks russia!
You can do the same with W8 and W7 with this GENIUS bootkit (better than this way)
Go ahead make your day I DID IT :
http://www.itsec.it/2012/08/06/x86-4gb-memory-limit-from-a-technical-perspective/#comment-3836