On 24-Mar-01 Arnd Bergman wrote:
> I also suspect you have misunderstood what PAE is about. It is
> independent of the amount of virtual (here: physical + swap) memory,
> but otoh, you already have to enable it to even access the full 4 GB
> of physical memory.
> As far as I remember, without PAE, you can only use half the virtal
> address space (2GB) for physical memory, but that border should
> be configurable within some limits (1GB - 3GB).
If I am misunderstanding PAE, its because of the kernel documentation:
[...snip]
High Memory support
CONFIG_NOHIGHMEM
Linux can use up to 64 Gigabytes of physical memory on x86 systems.
However, the address space of 32-bit x86 processors is only 4
Gigabytes large. That means that, if you have a large amount of
physical memory, not all of it can be "permanently mapped" by the
kernel. The physical memory that's not permanently mapped is called
"high memory".
If you are compiling a kernel which will never run on a machine with
more than 1 Gigabyte total physical RAM, answer "off" here (default
choice and suitable for most users). This will result in a "3GB/1GB"
split: 3GB are mapped so that each process sees a 3GB virtual memory
space and the remaining part of the 4GB virtual memory space is used
by the kernel to permanently map as much physical memory as
possible.
If the machine has between 1 and 4 Gigabytes physical RAM, then
answer "4GB" here.
If more than 4 Gigabytes is used then answer "64GB" here. This
selection turns Intel PAE (Physical Address Extension) mode on.
PAE implements 3-level paging on IA32 processors. PAE is fully
supported by Linux, PAE mode is implemented on all recent Intel
processors (Pentium Pro and better).
[snip ...]
The last paragraph says PAE is to be turned on for memory > 4GB.
What I really don't understand is how a swap space could possibly be
addressed on a 4GB physical ram system without PAE.
Perhaps my error is in thinking that a non-PAE kernel can use the
entire 4GB for a single process. I'm pretty sure that PAE limits
per-process memory to 3GB and the remaining 1GB of 32-bit space
is reserved as paging area to access the 36-bit PAE addresses. If
the non-PAE kernel has a similar per-process limitation, that would
good information to know before buying a 4GB system.
I apologize if this is the wrong arena for this question. Info
on this topic hard to find so I thought there may some knowledgeable
folks here.
Thanks,
Rick
PS: The 8.0 cooker is looking very good. I'm done with 7.2 now.