Why does my 32bit ubuntu see 8GB of RAM?

Posted on

QUESTION :

I have just installed a fresh copy of ubuntu 11.04 32 bit and I was surprised to see that the OS can see my 8GB of RAM not like Windows 32 bit OS.

How does it work? How is the address mapping performed? Is it efficient? Why doesn’t it work with Windows systems?

ANSWER :

Due to PAE: http://en.wikipedia.org/wiki/Physical_Address_Extension

AFAIK Windows client versions, while they support PAE, don’t support physical addresses past the 4 GB mark (apparently due to various buggy drivers). Windows server, and Linux, do not have this restriction.

Ubuntu upon detecting 4GB+ RAM automatically uses kernel with PAE extension, which supports up to 64GB RAM.

Related question on Ask Ubuntu: https://askubuntu.com/questions/43422/8-gb-ram-on-64-bit-processor-using-32-bit-ubuntu

It may be that the OS can detect your RAM but not address it. PAE is not, as far as I know, enabled by default.

Try

# free -m

The “total” stat should be around 8000, not 2700.

If it’s 2700, you still can’t address that RAM.

If you want to enable PAE, you’ll have to recompile the kernel

You might find it easier to just back up your home folder and install the 64-bit version of the OS. I use the 64-bit version for everyday Java development purposes and so far have yet to find any serious problems, but I do need the extra RAM.

Leave a Reply

Your email address will not be published.