Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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?

share|improve this question

migrated from May 20 '11 at 12:48

This question came from our site for professional and enthusiast programmers.

You'll want to post this on the sibling site – Jordan Parmer May 20 '11 at 12:46
32 bit Windows could always see more than 3GB of RAM, but only in the server versions – David Heffernan May 20 '11 at 12:47
All your applications still see a 4GB virtual address space (rather than a 2 exabyte virtual address space with 64 but applications) - even AFAIR the kernel itself. Only the memory manager is aware of the larger physical memory. In some ways PAE is more efficient, there is some translational overhead, but the memory overhead of 32 bit processes is less than that of 64 bit addresses, the memory needed to store a full 64 bit page table is effectively 4 times that of a 32bit page table. While multi-tasking is popular (and thus the demand for big RAM), very few applications hit the 32bit VA limit – crasic May 20 '11 at 19:03
up vote 11 down vote accepted

Due to PAE:

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.

share|improve this answer

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

Related question on Ask Ubuntu:

share|improve this answer

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.


# 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.

share|improve this answer
PAE is enabled by default on Ubuntu now. – Brendan Long May 20 '11 at 16:43
I do too... ;-) – Hendy Irawan Mar 30 '12 at 1:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .