I know that 32-bit 10.04 enables PAE on installation when it detects 3+ GB RAM, but I'd like to know a way to manually check (i.e. in the terminal) that PAE is, in fact, enabled.
Ubuntu 10.04 32-bit – How to check if kernel is PAE-enabled
32-bitpaeubuntu-10.04
Related Solutions
A few years ago, a group of programmers have released a kernel patch for Windows 7 to allow the usage of more than 4 GB of RAM under Windows 7. Recently, due to some virus scanners detecting the patch as a false positive, the download was removed from the website. Fortunately, I have saved a copy of the patch (which uses the RTM Windows 7 kernel), and uploaded it to my website here (see option #1 when I discuss the two methods to patch your Windows kernel). Furthermore, the authors have posted instructions on how to patch your kernel manually.
Even if you have Windows 7 SP1 (Build 7601), you can install the patch which contains kernel 7600. This is because your default kernel is not modified; a new one is copied to your system folder, and an additional boot menu option is added to boot Windows with the new, patched kernel instead of the older one. While I haven't found any problems running Windows 7 SP1 with the older kernel, if you do wish to use build 7601 of ntkrnlpa.exe
, you need to manually patch your kernel (see the link above).
The patch basically modifies the Windows 7 Kernel to be more like the Windows Server 2003 Datacenter Edition, which is compatible with up to 8 GB of RAM under 32-bit mode. This allows you to extend the PAE well into 8 GB of RAM under Windows 7 32-bit. For more information about why Microsoft implemented this technical limitation, see Licensed Memory in 32-Bit Windows Vista (requires JavaScript to be allowed from www.geoffchappell.com).
As mentioned above, note that individual processes will still be limited to 4 GB even if the system can access more... Although if you had 8 GB of RAM, then at least you'd still have another 4 GB for other processes ;)
For those interested in the technical aspects, this happens because of memory-mapped input/output (MMIO for short). This allows a CPU to access both peripherals and RAM through the address bus itself. Usually this is done though the higher-order memory addresses to avoid lower-order address conflicts. However, this gave rise to the commonly known 3 GB Memory Barrier in all consumer variants of 32-bit Windows operating systems.
Run
glxinfo | grep '^direct rendering:'
and if it shows Yes
then you have 3D acceleration, and hence OpenGL.
Best Answer
On current versions of Ubuntu on the 386 architecture, PAE is enabled on
-generic-pae
kernels but not on-generic
or-virtual
kernels, so you can check if the outputuname -r
ends with-pae
. This isn't very robust though, since it depends on intimate knowledge of what Ubuntu uses for kernel options.Some distributions provide the kernel configuration in
/proc/config
, so you can test with</proc/config fgrep -x CONFIG_X86_PAE=y
. Ubuntu doesn't, but it does keep the kernel configuration in a well-known place, so you can test with</boot/config-$(uname -r) fgrep -x CONFIG_X86_PAE=y
.Note that
grep -w pae /proc/cpuinfo
tells you whether your processor supports PAE. The flag will be present whether the kernel supports PAE or not.