I have allocated 4GB of RAM to a VM running 32bit Linux Centos 5.5.
For unknown reason, total memory is only about 3GB.
Mem: 3107536k total, 366308k used, 2741228k free, 54900k buffers
Where has the missing 1GB gone? Any help is greatly appreciated!
By default a 32bit kernel will only address the first 3G or so. You need to get a kernel with PAE support.
yum install kernel-PAE
and a reboot of the VM should let you see all 4G.The 32-bit Linux kernel splits the 4 GB virtual address space of a process in two parts: 3 GB and 1 GB. The lower 3 GB of the process virtual address space is accessible as the user-space virtual addresses and the upper 1 GB space is reserved for the kernel virtual addresses. This is true for all processes.
http://www.spack.org/wiki/LinuxRamLimits