Featured Post, Tips and Tricks

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

Windows-4-GB-More-RAM

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.

Windows-7-Vista-3-GB-Usable

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-4GB-RAM-Patch-
Windows Vista Patch
Windows-7-4GB-RAM-Patch-2
Windows 7 Patch: Step 1 (Click on the button)
Windows-7-4GB-RAM-Patch-1
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]

Tags: , , , ,

129 Responses to “How To Enable More Than 4GB Memory in Windows Vista and Windows 7”

  1. On June 28, 2011 at 6:51 am butisac responded with... #

    i forget to say, that i did stoped windows firewall and my antivirus, please help

  2. On August 7, 2011 at 8:00 pm hg2051 responded with... #

    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.

  3. On November 6, 2011 at 4:37 am Ozzyosborne680 responded with... #

    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 ) :)

  4. On November 28, 2011 at 10:59 pm 33ovi responded with... #

    thanks a milion man it show 5 gb from 5 gb installed~!!!!!

    • On December 20, 2012 at 2:29 am arben responded with... #

      thanks so mutch

  5. On November 29, 2011 at 8:26 pm 33ovi responded with... #

    damn whater mark did not disapear (i tried mcbuilder.exe)

    • On December 30, 2011 at 8:00 am W1n5t0n responded with... #

      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.

  6. On December 4, 2011 at 10:35 pm DDS responded with... #

    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.

  7. On January 21, 2012 at 3:28 am Alper responded with... #

    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..

  8. On March 1, 2012 at 1:06 am traian responded with... #

    Is not working with Windows 7 ultimate edition. I try three times and nothing.

  9. On May 21, 2012 at 5:12 pm Martin responded with... #

    Hi.

    How can i remove the patch?

    Thanks

    Martin

  10. On May 31, 2012 at 11:34 pm Yordi responded with... #

    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!!

  11. On June 1, 2012 at 3:41 am Enea responded with... #

    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.

  12. On June 25, 2012 at 1:26 pm Mikeo responded with... #

    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.

  13. On July 7, 2012 at 11:30 am Craig responded with... #

    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?

  14. On July 9, 2012 at 9:36 pm purchase settlements responded with... #

    thanks for the info. I was having trouble with this wehn I wanted to upgrade but not have to but a whole new system

  15. On July 12, 2012 at 5:24 am Josh responded with... #

    Wow this is REALLY cool!
    I’m glad to learn that Window’s 3gb limit for 32-bit systems is only an artificial one. -.-

  16. On July 19, 2012 at 10:27 pm Nike1600 responded with... #

    How can i remove it ? plzzzzzzzzzzzz telllllllllll

    • On July 20, 2012 at 4:47 am Tomas responded with... #

      Yes pls tell how remove it? coz on some games after this patch my fps are very very low.

  17. On July 20, 2012 at 9:10 pm hg2051 responded with... #

    Never did, neither will, trust russian (patches).

  18. On August 27, 2012 at 9:33 pm jafar responded with... #

    hi
    i download not
    please for upload me because
    I internet is limit
    thank you

  19. On September 17, 2012 at 10:21 pm Riza responded with... #

    Hello!
    Can you make patch for Windows 8 32bit?

    • On September 18, 2012 at 7:23 pm Pedro Augusto responded with... #

      Não consegui instalar no Windows 8 Build 9200 —–

  20. On October 2, 2012 at 1:06 pm biplab dansena responded with... #

    can i use it on windows xp 32 bit system

    • On October 9, 2012 at 11:38 am Mike responded with... #

      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.

      • On October 9, 2012 at 12:13 pm Mike responded with... #

        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.

  21. On October 3, 2012 at 9:40 pm purchase settlements responded with... #

    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.

  22. On October 28, 2012 at 7:06 pm visit this link over here now responded with... #

    I agree in part to this site, but maybe i need to think about it more

  23. On November 12, 2012 at 4:50 am Loppree responded with... #

    Thanx a lot men, it works great on Win7. It shows 16GB. And my problems with video reendering out of memory errors are gone. :-)

  24. On December 11, 2012 at 10:43 pm keny responded with... #

    fucking lovely, thanks russia!

  25. On December 14, 2012 at 9:59 pm Mike responded with... #

    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

Trackbacks/Pingbacks

Add your response

More in Featured Post, Tips and Tricks (44 of 82 articles)