Turn on Physical Address Extension mode and unleash the full potential of your 32-bit RAM memory.
Although the 64-bit transition period has come and gone,
there are a surprising number of active installations of the 32-bit Windows operating system,
particularly in industrial or business environments. One plausible explanation
is the fact that backwards compatibility with older 16-bit Windows code is not
possible on 64-bit Windows. Virtual 8086 mode, which is what NT Virtual DOS
Machine or NTVDM relies on, cannot be utilized when the CPU is in 64-bit long
mode. To counter this limitation, 32-bit Windows is used instead of 64-bit
Windows.
Initially, there wasn't much of a difference between the two
architectures in real world usage situations. However, over time, the base
amounts of memory starting at 8GB and above exceed the maximum addressable
memory space on 32-bit Windows, which is set at a rather paltry 4GB. And that
doesn't even take into consideration reserved memory overhead that comes into
play when you max out the system memory, sometimes bringing usable memory down
below 3GB.
Some operating systems like Linux implement a feature called
Physical
Address Extension or PAE
mode, which switches to 36-bit memory addressing,
allowing for access to a grand total of 64GB of main system memory, which is a
massive improvement. Likewise, Microsoft has implemented PAE in the Windows
kernel, albeit disabled by default and only accessible on server editions of
Windows. To that end, a proper patch of the Windows kernel will be necessary on
desktop editions in order to attain the same memory access benefit.
With only 3.5 GB out of 8 GB of main memory available, that's just a sheer waste of potential resources
Aside from some notable exceptions, which will be mentioned
in a bit, enabling PAE in Windows is a rather painless exercise with no harmful
side-effects. Although you can address up to 64GB of memory in PAE mode, each
process is limited to 2GB of memory space per active process. For certain
memory hungry applications, like Adobe Photoshop, you are still far better off
using a 64-bit version of Windows instead. For this reason, I would consider
PAE mode to be more of a Band-Aid than an actual long-term solution. Luckily,
for a good portion of business applications, this shouldn't be a major concern.
Steps
Activating proper PAE mode on Windows 8.1 is a fairly easy
process. However, before you begin the procedure, be sure that no RAM disk or
memory optimizer drivers are active in order to prevent possible conflicts. You
can re-enable them once you have successfully booted into PAE mode on Windows.
For safety purposes and easy recovery, you will be creating a boot menu item so
that you can go back and forth between PAE and non-PAE modes in case additional
troubleshooting is necessary.
Here are the steps:
- Download the PAE Windows kernel patch from Wen Jia Liu's personal webpage.
- Enter the Desktop tile from the Start screen and open the downloaded zip file.
- Extract PatchPae2.exe to your System32 folder. The default location is C:\Windows\System32.
- Right-click on the Windows Start Button and click "Command Prompt (Admin)"
- Execute the following commands in sequence:
cd %SYSTEMROOT%\System32
PatchPae2.exe -type kernel -o ntoskrnx.exe ntoskrnl.exe
PatchPae2.exe -type loader -o winloadp.exe winload.exe
bcdedit /copy {current} /d "Windows 8.1 (PAE Patched)"
Windows generates a unique boot ID, referencing the PAE option.
At this juncture, you will see a message stating the entry
was successfully copied. Write down the long string of letters and numbers
surrounded by braces, representing the boot ID, since you will need to use it
for the next few commands:
bcdedit /set {PASTE BOOT ID HERE} kernel ntoskrnx.exe
bcdedit /set {PASTE BOOT ID HERE} path \Windows\System32\winloadp.exe
bcdedit /set {PASTE BOOT ID HERE} nointegritychecks 1
bcdedit /set {bootmgr} default {PASTE BOOT ID HERE}
bcdedit /set {bootmgr} timeout 5
Once all the commands are processed, you will need
to reboot
your system for changes to take effect. When you reboot, you will be
presented
with a Windows boot manager screen. The time out is set to five seconds,
but
you can change this if you wish using the following command, replacing
the X with the desired number of seconds for the timeout, a 0 to boot
immediately
to the default entry, or a -1 to make the timeout indefinite.
bcdedit /set {bootmgr} timeout X
When Microsoft pushes updates to Windows 8.1, it can sometimes
include updates to the kernel itself. If this ever happens, simply run the
following command to refresh the PAE kernel.
PatchPae2.exe
-type kernel -o ntoskrnx.exe ntoskrnl.exe
And finally, if you wish to return Windows back to its
former non-PAE enabled state, you may do so by performing the following tasks:
- Delete the boot entry for "Windows 8.1 (PAE Patched)" via msconfig.
- Delete the files ntoskrnx.exe and winloadp.exe from System32.
Ahh! Much better!
Caveats
With all this in mind, it's important to note that certain
hardware drivers might not work correctly in PAE mode. Intel HD series graphics
starting at around Sandy Bridge will experience video buffer corruption issues,
since the drivers written for 32-bit Windows 8.1 do not take the extended
memory addressing that is present in PAE mode into account. The only known
workaround at this time is to force install the Windows XP 32-bit version of
the Intel HD display driver.
Bottom line
Depending on your needs, this workaround works rather well
for the most part, with the only major drawbacks being an uglier desktop with
no Aero Glass transparency in the user interface. The reason for this is the
fact that the driver is not written to follow the latest WDDM framework.
Another major sticking point is that switchable GPU graphics like Nvidia
Optimus are rendered useless when the host integrated GPU isn't running the
correct drivers. This could very well be a make it or break it situation,
especially if you have a work laptop that works in graphics heavy applications
like AutoCAD. Dedicated, non-switchable graphics solutions from vendors like
Nvidia and AMD are unaffected by the PAE limitation.
All that said, this PAE guide may still serve as a blessing
for anyone clinging to legacy software, but might want to make the best use of
all their system memory at the same time. Although 32-bit native Windows might
not be around forever, there's still some life left in the flagging platform
and you won't have to jump ship to 64-bit for the foreseeable future.
0 comments:
Post a Comment
Appreciate your concern ...