pae(4)

NAME

PAE - Physical Address Extensions

SYNOPSIS

options PAE

DESCRIPTION

The PAE option provides support for the physical address ex
tensions capability of the Intel Pentium Pro and above CPUs, and allows
for up to 64
gigabytes of memory to be used in systems capable of sup
porting it. With
the PAE option, memory above 4 gigabytes is simply added to
the general
page pool. The system makes no distinction between memory
above or below
4 gigabytes, and no specific facility is provided for a pro
cess or the
kernel to access more memory than they would otherwise be
able to access,
through a sliding window or otherwise.

SEE ALSO

smp(4), tuning(7), config(8), bus_dma(9)

HISTORY

The PAE option first appeared in FreeBSD 4.9 and FreeBSD
5.1.

AUTHORS

Jake Burkholder <jake@FreeBSD.org>

BUGS

Since KLD modules are not compiled with the same options
headers that the
kernel is compiled with, they must not be loaded into a ker
nel compiled
with the PAE option.
Many devices or their device drivers are not capable of di
rect memory
access to physical addresses above 4 gigabytes. In order to
make use of
direct memory access IO in a system with more than 4 giga
bytes of memory
when the PAE option is used, these drivers must use a facil
ity for remapping or substituting physical memory which is not accessible
to the
device. One such facility is provided by the busdma inter
face. Device
drivers which do not account for such devices will not work
reliably in a
system with more than 4 gigabytes of memory when the PAE op
tion is used,
and may cause data corruption. The PAE kernel configuration
file
includes the PAE option, and explicitly excludes all device
drivers which
are known to not work or have not been tested in a system
with the PAE
option and more than 4 gigabytes of memory.
Many parameters which determine how memory is used in the
kernel are
based on the amount of physical memory. The formulas used
to determine
the values of these parameters for specific memory configu
rations may not
take into account the fact there may be more than 4 giga
bytes of memory,
and may not scale well to these memory configurations. In
particular, it
may be necessary to increase the amount of virtual address
space available to the kernel, or to reduce the amount of a specific
resource that
is heavily used, in order to avoid running out of virtual
address space.
The KVA_PAGES option may be used to increase the kernel vir
tual address
space, and the kern.maxvnodes sysctl(8) may be used to de
crease the number of vnodes allowed, an example of a resource that the
kernel is likely
to overallocate in large memory configurations. For optimal
performance
and stability it may be necessary to consult the tuning(7)
manual page,
and make adjustments to the parameters documented there.
BSD April 8, 2003
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout