My primary machine for work and play is a nearly-four-year-old laptop. It’s a Dell XPS m1530 and it has been true to me for most of its life. At the time of purchase in December of 2007 I bought a no-fault warranty for an extra $400 or $500 which recently paid off. The motherboard failed and I was able to get virtually everything inside replaced except for the T7700 CPU itself at absolutely no cost. Oh, I also snagged a new wrist-rest too since I had dented the original (a ProCurve switch at medium velocity can do a surprising amount of damage). No-fault replacement means no-fault replacement. I could drop-kick this thing into a mulcher and get a new one. Now I basically have a completely new laptop for no expenditure.
I don’t do heavy gaming or anything that strains the CPU. The XPS laptop’s hinges are known to be amazing, so there’s no limpness or dangling of the screen. There’s no reason that this laptop shouldn’t last another four years. Except for one thing: I only have 3GB of RAM.
3GB of RAM, while once considered epic, is now quite a hindrance to me. I use VMware Player to keep around an instance of Windows 7 and also a few other sandboxes. Virtualization is obviously RAM hungry and sometimes I can get up and brush my teeth in between periods of unresponsiveness in a virtual guest. I used Crucial’s brilliant RAM Calculator to find that my laptop’s motherboard/CPU/BIOS supports up to 8GB of RAM! In short order, I purchased two 4GB sticks of RAM and eagerly awaited their arrival, however I was slightly curious how my installation of 32-bit Fedora 14 would handle it.
Yes, I know, I should have installed 64-bit Fedora when I switched to Linux in early 2011. I’m still skittish about 64-bit OSs though. I think I have PTSD over trying to be an early adopter of 64-bit operating systems years ago. I’ll be installing 64-bit Fedora 16 when it comes out in a month’s time or so, but until then I want my 8GB of RAM right NOW!
Using the PAE Kernel
In order to see more than 4GB of RAM with a 32-bit kernel, you’ll need the Physical Address Extension version of your kernel. Some distributions nowadays default to using the PAE kernel because PAE kernels use the NX bit of the CPU. However, before you can use the PAE kernel, you have to make sure your CPU is PAE compatible. To find out, look here:
cat /proc/cpuinfo | grep -i pae
If you see PAE listed, then you’re all set! Here’s my output:
From there, it’s a simple matter of using your package manager to install the PAE enabled kernel. For me, it looks like this:
yum install kernel-PAE.i686
However!! I use an Nvidia graphics card which uses a kmod. Nvidia has a separate kmod for the PAE kernel that I have to install. This is a good time to mention that you should probably think long and hard about anything that you use that might be dependent on your specific kernel. Have you done any kernel hacking? Does something depend on your 32-bit kernel that might break if you used a PAE kernel? Think specifically about any kmods that you might be using.
In my case, I installed the new nvidia kmod thusly:
yum install kmod-nvidia-PAE.i686
I did both consecutively. I did not reboot into the PAE kernel and then install the kmod. After installing the 8GB of RAM and then starting the machine up, I nervously waited. With much relief, the boot process went through as normal (well, the BIOS took longer than usual since it detected hardware changes) and I received my normal login screen. At a shell, I was happy to see the following:
Of course, I didn’t follow all of my own instructions about considering all packages that were kernel dependent or used kmods because upon opening VMWare player I received the following error:
Before you can run VMware, several modules must be compiled and loaded in the running kernel. Kernel Headers 126.96.36.199-97.fc14.i686.PAE
In that case, I had to install the kernel-devel-PAE.i686 package and then refresh the VMware error dialog box to find the new PAE kernel headers.
I now have an 8GB machine and most importantly I can give my Windows 7 VMware instance 4GB of RAM. I admit it, I really like Outlook 2010. I also need QuickBooks to run my business finances. Thus I keep Windows around (also, it’s sadly necessary to have IE around when working on Windows networks, particularly SharePoint installations).
Behold, the glory!
Yes, I’ll install 64-bit Fedora 16 in a few weeks when it comes out. Until then, everyone can point and laugh at me.