On Fri, Feb 18, 2005 at 07:13:55PM +0100, Ralf Ertzinger wrote:
Is the amount of memory that 'free' reports as 'free'
(or /proc/meminfo
states as 'MemFree:') the amount of unrequested memory, or does it include
requested but not actually used memory?
The latter. (MemFree is physical memory, not virtual memory, by the
way.)
If the latter, where can one see the amount of unrequested memory?
It's CommitLimit - Committed_AS. At one point there was a CommitAvail
but it looks like it was removed in 2.6.10 because it's redundant:
http://lkml.org/lkml/2004/10/24/118
BTW, with overcommit_memory=2,
CommitLimit = (MemTotal * (overcommit_ratio / 100)) + SwapFree
With the default of overcommit_ratio = 50, this simplifies to:
CommitLimit = (MemTotal / 2) + SwapFree
Unless you're setting overcommit_ratio to 100, this means that with
640MB of RAM and no swap, user programs are allowed to request 320MB of
memory at most.
I hope this helps...
-Barry K. Nathan <barryn(a)pobox.com>