On 03/22/2013 12:59 AM, Will Huck wrote:
Hi Rik,
On 03/22/2013 11:56 AM, Will Huck wrote:
Hi Rik,
On 03/22/2013 11:52 AM, Rik van Riel wrote:
On 03/21/2013 08:05 PM, Will Huck wrote:
One offline question, how to understand this in function balance_pgdat:
/*
* Do some background aging of the anon list, to give
* pages a chance to be referenced before reclaiming.
*/
age_acitve_anon(zone, &sc);
The anon lrus use a two-handed clock algorithm. New anonymous pages
start off on the active anon list. Older anonymous pages get moved
to the inactive anon list.
The file lrus also use the two-handed clock algorithm, correct?
After reinvestigate the codes, the answer is no. But why have this
difference? I think you are the expert for this question, expect your
explanation. :-)
Anonymous memory has a smaller amount of memory (on the order
of system memory), most of which is or has been in a working
set at some point.
File system cache tends to have two distinct sets. One part
are the frequently accessed files, another part are the files
that are accessed just once or twice.
The file working set needs to be protected from streaming
IO. We do this by having new file pages start out on the
inactive file list, and only promoted to the active file
list if they get accessed twice.
--
All rights reversed
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>