Still using a 32-bit Windows machine? Here’s how to remove the 4GB limit that might be hampering your RAM usage. While 32-bit was once the standard, in recent years more and more Windows users have migrated to the 64-bit version of the OS. The patch program automatically makes a copy of the kernel file, then removes the lock and integrates the new kernel file as an extra boot menu entry in the Windows 7 boot menu. There IS a way to support more than 4 GB of ram on 32bit system. Windows XP used to support it before SP2 I believe.
Windows 7 operative system and your PC’s hardware are limiting the maximal amount of memory that your PC can use. For 64-bit operating systems, that limit is theoretically non-existent, as 64-bit systems can read and use 192 GB of available RAM. For 32-bit operating systems, the set limit is 4GB of RAM. This means that the operational RAM will be anywhere between 2.75 and 3.5 GB because, depending on your chipset and motherboard, Windows kernel will block a good part of your RAM into ‘hardware reserved’.
This limitation is a consequence of IO memory mapped reservations that are overlaying the physical address spaces and are masking them out so the working memory cannot utilize them. This behavior is not dependant on the OS the machine is running.
Very large portions of address spaces below 4GB, which is also the highest accessible address for 32-bit systems, are being reserved for system hardware, such as PCI bus, bridges, BIOS, legacy video support, ACPI, etc. At least 256MB to 768MB will be reserved by PCI Express support only, depending on installed memory on your graphics card.
The direct consequence of these hardware reservations is that an average system is cut short for anywhere between 265 MB and 1GB, which are then inaccessible for your OS.
Intel chipsets are especially known for reserving certain address ranges by default and they often have fixed 1.5GB that is always reserved and unusable by Windows.
Although many claim that it is impossible removing this memory limit, it has proven to be wrong, as it is very much possible. A group of Russian programmers have provided a hacked kernel, which you can use to fix this limitation.
According to Microsoft themselves, this is a well known problem and they have even released a special Windows Server 2003 Datacenter edition , that supports even 64GB of RAM. It has also been known that all Windows Vista 32bit editions contain the code that would allow usage of physical memory even beyond 4GB, but Microsoft didn’t unlock that code.
For now, you can freely download this file: Windows 7 32bit 4GB Ram Patch and follow the installation instructions on this website: http://www.unawave.de/windows-7-tipps/32-bit-ram-barrier.html?lang=EN and you’re all set.
Some Antivirus programs may detect this program as a trojan, which is certainly false. You can simply temporarily disable it, or add the file to your antivirus’ exceptions list. It will be enough to allow undisrupted download and installation of the file.
Home Page——/——/——/——/
The kernel of the 32-bit version of Windows 7 has only a lock, which prevents access to more memory. More dramatically is this lock in the 32-bit version of Windows 7 Starter Edition: There the prohibition is much more rigorous and it only allows access to 2 GB of RAM:
In the 32-bit version of Windows 7 from 4 GB usually only 3.25 -3.5 GB of RAM are usable:
In general many people believe this “not usable” RAM
is occupied by the graphic card RAM:
is occupied by the graphic card RAM:
The German computer magazine c’t has made a test
with different graphic cards (c’t 23/2009, page 165):
with different graphic cards (c’t 23/2009, page 165):
Graphic card RAM | Usable RAM from 4 GB |
0 MB | 3.5 GB |
128 MB | 3.5 GB |
256 MB | 3.25 GB |
512 MB | 3.25 GB |
1024 MB | 3.25 GB |
These results are completely incomprehensible. Why is with no video card (0 MB, connection via Remote Desktop) 512 MB RAM blocked? Why blocked a graphic card with 128 MB also 512 MB RAM – and not 128 MB? And why blocked a graphic card with 1024 MB “only” 750 MB?
The Russian Programmers Group “staforce” has written a small program witch removes the lock in the kernel of the 32-bit version of Windows 7. “ICE Technologie” has translate this program into English. The program automatically makes a copy of the kernel file “ntkrnlpa.exe” and saves the copy as separate file “ntkrlICE.exe”. Then the program removes the lock in the copied file “ntkrlICE.exe” and integrates the new kernel file as an extra boot menu entry in the Windows 7 boot menu. So then you have the option to start Windows 7 either as usual with the original kernel file “ntkrnlpa.exe” or with the modified kernel file “ntkrlICE.exe”.
With such a patched (modified) kernel the 32 bit version of Windows 7
suddenly can use almost the entire 4 GB of RAM:
suddenly can use almost the entire 4 GB of RAM:
For these screen shots a 32 MB onboard graphic card is used. So 32 MB is really “hardware reserved”. The rest of 2 MB is reserved for I/O ports (USB port, serial-, parallel port, etc.).
And even 8 GB of RAM are now no longer a problem.
The original kernel still reports that 4898 MB are “Hardware Reserved” – what hardware?
The original kernel still reports that 4898 MB are “Hardware Reserved” – what hardware?
The patched kernel then reports correct that only 34 MB is “Hardware Reserved”:
The RAM limit of the 32-bit version of Windows 7 is therefore 64 GB – like Microsoft describes for the “Windows Server 2003 Datacenter Edition” (see above). More extensive details – still from Vista-times – see here by Geoff Chappell.
The program makes automatically a copy of the kernel file, then removes the lock and integrates the new kernel file as an extra boot menu entry in the Windows 7 boot menu. So then you have the option to start Windows 7, either as usual with the original kernel file or with the modified kernel file.
The patch program does not need to install – it runs as a “stand-alone” program; e.g. directly from a USB stick. And it installs no background program.
What the patch is doing you can read here in German language or here in machine translation. So you also can do it manually
The patch has two small but treatable side effects:
- Because Windows 7 observed the changes the kernel can not boot normally. For the Microsoft programmers who often times work with patched kernel Microsoft has built in a boot parameter – an additional switch: “testsigning = Yes”). So they can test their patched kernels. With this switch the patched kernel can start easily.
- But this switch leads to the fact that on the desktop background, lower right corner (above the clock) a hint (“Watermark”) is displayed:
To remove this “watermark” you can use the button “Remove Watermark”:
Then you should reboot.
To change the boot menu you can start the Windows 7 program “msconfig”:
![8gb 8gb](/uploads/1/2/5/7/125734771/600344904.png)
On the tab “Boot” you can specify:
- Which boot menu entry to be booted by default (if the user does not interact).
- How long should the Start menu appear.
- And you can delete one or the other boot menu entry.
However, you should not remove the boot menu entry for the original kernel. Because there are some very few programs that do not get along with as much RAM as the kernel patch makes available. Then you can always reboot the original kernel.
To remove the patch you only need remove the start Menu entry with “msconfig” (you can start the program “msconfig” when you enter in the search box in the start menu “msconfig”). The boot menu then will no longer appear. Because as long as only one menu item is available, no boot menu appears. The copied, patched kernel file “ntkrlICE.exe” in the folder “C:Windowssystem32” can also be safely deleted.
In a Command Prompt with admin rights you can see with the command
“bcdedit” the new boot menu entry in detail:
“bcdedit” the new boot menu entry in detail:
The text that appears in the boot menu can be found under “description“.
“testsigning = Yes” allows the patched kernel to start despite modification.
The copied and modified kernel is called “ntkrlICE.exe“.
With “pae = ForceEnable” the address extension for the RAM is activated.
“testsigning = Yes” allows the patched kernel to start despite modification.
The copied and modified kernel is called “ntkrlICE.exe“.
With “pae = ForceEnable” the address extension for the RAM is activated.
Download RamPatch——/——/——/——/
Download “32bit RamPatch”:
Server 1, Server 2.
Server 1, Server 2.
——x——x——x——x——x——x——x——x(OR)x——x——x——x——x——x——x——x——x—--
Enable more than 3GB RAM on 32-bit Windows 7 (PatchPae):
This patch enables to use more than 3 Giga Byte of Memory (RAM) on 32-bit Windows 7. By default Windows 7 32-bit (also called x86) recognizes more than 3 GB RAM installed in a PC, but it will not use all of that.
NOT ALL PROGRAMS CAN SUCCESSFULLY USE THE MEMORY ENABLED BY THE PATCH!!
Program used to patch Windows 7: PatchPae.
NOT ALL PROGRAMS CAN SUCCESSFULLY USE THE MEMORY ENABLED BY THE PATCH!!
Program used to patch Windows 7: PatchPae.
Download PatchPae:
Server 1
Server 2
Tested and working on: Windows Vista SP2; Windows 7 SP1.
Operating system patched in this video: Windows 7 Ultimate SP1.
Server 2
Tested and working on: Windows Vista SP2; Windows 7 SP1.
Operating system patched in this video: Windows 7 Ultimate SP1.
Initial memory usable: 3.5 GB (only 70%)
Memory usable after patching: 5 GB (100%)
Memory usable after patching: 5 GB (100%)
After patching Windows 7 (32bit) the memory limit will be 128GB instead of ~3GB.
Before you start patching:
-temporarily disable or uninstall antivirus !!!!!!!!!!!!!!!!
-temporarily disable user account control
-temporarily disable windows defender
-make sure all commands are typed correctly (don’t trust copy & paste !!)
-make sure you have administrator rights
-temporarily disable user account control
-temporarily disable windows defender
-make sure all commands are typed correctly (don’t trust copy & paste !!)
-make sure you have administrator rights
How to do it:
1. Copy PatchPae to C:
2. Open Command Prompt as Administrator
3. cd Windowssystem32
4. C:PatchPaePatchPae.exe -type kernel -o ntkrnlpx.exe ntkrnlpa.exe
this patches kernel to enable max 128GB RAM
this patches kernel to enable max 128GB RAM
5. C:PatchPaePatchPae.exe -type loader -o winloadp.exe winload.exe
this patch loader to disable signature verification
this patch loader to disable signature verification
6. bcdedit /copy {current} /d “Windows 7 (PAE Patched)”
this creates new boot entry
this creates new boot entry
7. bcdedit /set {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} kernel ntkrnlpx.exe
this sets new boot entry to load new patched kernel
this sets new boot entry to load new patched kernel
8. bcdedit /set {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} path Windowssystem32winloadp.exe
this sets new loader to be new patched loader
this sets new loader to be new patched loader
9. bcdedit /set {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} nointegritychecks 1
this will disable verification of the loader
this will disable verification of the loader
OPTIONAL
10. bcdedit /set {bootmgr} default {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
this will set the patched boot entry to be the default
this will set the patched boot entry to be the default
11. bcdedit /set {bootmgr} timeout 5
this sets timeout to shorter
this sets timeout to shorter
12. Restart the computer!
See a video about this: