![]() |
![]() ![]() GNU/Linux Desktop Survival Guide by Graham Williams |
![]() |
|||
Memory |
Linux is limited by hardware limitations in terms of access to memory.
For a 32 bit machine (i386) the total amount of memory that the
processor can address is or 4GB. Linux allocates one quarter
of this for the kernel, and the rest for processes. (MS/Windows
allocates half for the operating system and only half for the user
processes.) Thus a single user process can access up to about 3GB of
memory (seems to actually be about 2.6GB or 2680MB).
Intel's PAE (Physical Address Extension) is a feature of all Pentium Pro and newer CPU's. The PAE extension allows up to a maximum of 64GB of Physical Memory (RAM) to be addressed by the operataing system, but not a process. This is achieved by using indirect pointers to the higher memory locations. There is a CPU and RAM hit for using this, and seems to be of the order of 3-6% CPU. Note again that PAE does not increase Linux's ability for a single process to see more than 3GB of RAM.
A 64 bit processor allows much more memory to be addressed. The AMD
Opteron uses 40 bits for addressing (due to a current physical limit
on address pins) but uses 64 bit addressing, so up to bytes
can be addressed. However, some applications actually run slightly
slower because the pointers are larger and garbage collection will
take longer.
Copyright © 1995-2006 Graham.Williams@togaware.com