Connect and cross-reference FAQ items dealing with memory on i386 and PAE.

Approved by:	gnn (mentor)
Reviewed by:	hrs
Suggested by:	pgj
This commit is contained in:
Ivan Voras 2008-07-10 18:55:30 +00:00
parent 4536923b00
commit bdb44bfe49
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=32513

View file

@ -1917,12 +1917,12 @@
</question>
<answer>
<para>The limit is 4&nbsp;GB on a standard &i386; install,
<para>Memory limits depend on the platform used. On a standard
&i386; install, the limit is 4&nbsp;GB
but more memory can be
supported through &man.pae.4;. This does require a kernel
recompile, with an extra option to enable PAE:</para>
<programlisting>options PAE</programlisting>
supported through &man.pae.4;. See
<link linkend="memory-i386-over-4gb">instructions
for using 4&nbsp;GB or more memory on &i386;</link>.</para>
<para>&os;/pc98 has a limit of 4&nbsp;GB memory, and PAE can not
be used with it. Other architectures
@ -2158,6 +2158,17 @@
(see &man.kld.4;) are not supported. This means all drivers must
be compiled into the kernel.</para>
<para>The most common way to enable PAE is to build a new kernel with
the special ready-provided kernel configuration file called <filename>PAE</filename>,
which is already configured to build a safe kernel. Note that some entries in
this kernel configuration file are too conservative and some drivers marked
as unready to be used with PAE are actually usable. A rule of thumb is that
if the driver is usable on 64-bit architectures (like AMD64), it is also
usable with PAE. If you wish to create your own kernel configuration file,
you can enable PAE by adding the following line to your configuration:</para>
<programlisting>options PAE</programlisting>
<para>PAE is not much used nowadays because most new x86 hardware also
supports running in 64-bit mode, known as AMD64 or
&intel;&nbsp;64. It has a much larger
@ -2884,17 +2895,17 @@ bindkey ^[[3~ delete-char # for xterm</programlisting>
<qandaset>
<qandaentry>
<question id="pae">
<para>Why is &os; finding the wrong amount of memory?</para>
<para>Why is &os; finding the wrong amount of memory on &i386; hardware?</para>
</question>
<answer>
<para>The reason is the difference between physical memory addresses
and virtual addresses.</para>
<para>The most likely reason is the difference between physical
memory addresses and virtual addresses.</para>
<para>The convention for most PC hardware is to use the memory area
between 3.5&nbsp;GB and 4&nbsp;GB for a special purpose (usually for PCI). This
address space is used to access PCI hardware. As a result real,
physical memory can not appear in that address space.</para>
physical memory can not be accessed by that address space.</para>
<para>What happens to the memory that should appear in that location
is dependent on your hardware. Unfortunately, some hardware does
@ -2908,15 +2919,16 @@ bindkey ^[[3~ delete-char # for xterm</programlisting>
<para>On a 32&nbsp;bit version of &os;, the memory appears lost, since it
will be remapped above 4&nbsp;GB, which a 32&nbsp;bit kernel is unable to
access. In this case, the solution is to build a PAE enabled
kernel. See <link linkend="memory-limits">this FAQ entry</link>
for more information.</para>
kernel. See <link linkend="memory-limits">the entry on memory limits</link>
and <link linkend="memory-upper-limitation">about different memory
limits on different platforms</link> for more information.</para>
<para>On a 64&nbsp;bit version of &os;, or when running a PAE-enabled
<para>On a 64-bit version of &os;, or when running a PAE-enabled
kernel, &os; will correctly detect and remap the memory so it is
usable. During boot, however, it may seem as if &os; is detecting
more memory than the system really has. This is normal and the
available memory will be corrected as the boot process
completes.<para>
more memory than the system really has, due to the described remapping.
This is normal and the available memory will be corrected as
the boot process completes.<para>
</answer>
</qandaentry>