Add FAQ entries about memory support in FreeBSD, mainly to have somewhere

to point people with the "OMG I don't see 4 GB of memory on my i386"
problem.

Approved by:	gnn
Reviewed by:	hrs
This commit is contained in:
Ivan Voras 2008-07-10 15:06:37 +00:00
parent da41aa5a54
commit 4536923b00
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=32512

View file

@ -2106,6 +2106,69 @@
</qandaset>
</sect1>
<sect1 id="compatibility-memory">
<title>Memory</title>
<qandaset>
<qandaentry>
<question id="memory-upper-limitation">
<para>Does &os; support more than 4&nbsp;GB of memory (RAM)? More
than 16&nbsp;GB? More than 48 GB?</para>
</question>
<answer>
<para>Yes. &os; as an operating system generally supports as much
physical memory (RAM) as the platform it is running on does. Keep in
mind that different platforms have different limits for memory;
for example &i386; without <acronym>PAE</acronym> supports
at most 4&nbsp;GB of memory
(and usually less than that because of PCI address space) and
&i386; with PAE supports at most 64&nbsp;GB memory.
AMD64 platforms currently deployed support up to
1&nbsp;TB of physical memory.</para>
</answer>
</qandaentry>
<qandaentry>
<question id="memory-i386-over-4gb">
<para>Why does &os; report less than 4&nbsp;GB memory when installed
on an &i386; machine?</para>
</question>
<answer>
<para>The total address space on &i386; machines is 32-bit, meaning that at
most 4&nbsp;GB of memory is addressable (can be accessed). Furthermore,
some addresses in this range are reserved by hardware for different purposes,
for example for using and controlling PCI devices, for accessing
video memory, and so on. Therefore, the total amount of memory usable by the
operating system for its kernel and applications is limited to significantly
less than 4&nbsp;GB. Usually, 3.2&nbsp;GB to 3.7&nbsp;GB is the maximum usable
physical memory in this configuration.</para>
<para>To access more than 3.2&nbsp;GB to 3.7&nbsp;GB of installed memory (meaning
up to 4&nbsp;GB but also more than 4&nbsp;GB), a special tweak called
<acronym>PAE</acronym>
must be used. PAE stands for Physical Address Extension and is a
way for 32-bit x86 CPUs to address more than 4&nbsp;GB of memory. It
remaps the memory that would otherwise be overlayed by address
reservations for hardware devices above the 4&nbsp;GB range and uses it
as additional physical memory (see &man.pae.4;). Using PAE has
some drawbacks; this mode of memory access is a little bit slower
than the normal (without PAE) mode and loadable modules
(see &man.kld.4;) are not supported. This means all drivers must
be compiled into the kernel.</para>
<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
address space and does not need such tweaks. &os; supports AMD64
and it is recommended that this version of &os; be used instead
of the &i386; version if 4&nbsp;GB or more memory is required.</para>
</answer>
</qandaentry>
</qandaset>
</sect1>
<sect1 id="compatibility-processors">
<title>Architectures and processors</title>