FreeBSD 7.0 and RAM limit

N. Raghavendra raghu at mri.ernet.in
Wed Jul 9 12:36:59 UTC 2008


At 2008-07-05T13:04:19+02:00, Robert Heron wrote:

> FreeBSD 7.0-R on i386 server with motherboard S5000VSA and 6GB RAM
> onboard. BIOS version - 88 (the latest)
>
> Kernel includes: options		MAXMEM=(6*1024*1024)
>
> And FreeBSD reports only:
>
> real memory  = 2680160256 (2556 MB)
> avail memory = 2617892864 (2496 MB)
>
> Why? What is wrong that FreeBSD sees only about 2.5GB instead of
> 6GB?

(I ran into this question recently when buying a computer, and did some
homework on it, however my understanding may be off the mark.)

As mentioned in earlier replies, the problem isn't caused by the OS,
but is a limitation of the i386 architecture, in which each byte of
memory is indexed by a 32-bit integer.  This means that an i386
machine can use only 2^32 bytes, i.e., 4 GB, of memory --- unless one
uses pae(4).  Some of the 2^32 addresses are used by devices like the
video card, and by the BIOS.  For instance, if the machine has a video
card with 512 MB of video RAM, this means that less than 3.5 GB of
memory can be used.  It seems a safe bet in such a case to install at
most 3 GB of memory.

There is more info at

http://www.codinghorror.com/blog/archives/000811.html

http://en.wikipedia.org/wiki/Memory_address

Raghavendra.

-- 
N. Raghavendra <raghu at mri.ernet.in> | http://www.retrotexts.net/
Harish-Chandra Research Institute   | http://www.mri.ernet.in/
See message headers for contact and OpenPGP information.



More information about the freebsd-questions mailing list