[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Fwd: Re: Buffers VS Page Cache



On Sun, 13 Feb 2011, Chris Jones wrote:
> Well http://www.google.com/search?q=linux+meminfo gives 137,000 results.
> 
> Are you suggesting I do your research for you?

This is not an easy question to answer, a search won't help if the person
has no clue about the Linux VM.

This is a question for the LKML.  You don't have much hope of getting it
answered right anywhere else, *and* the answer depends on the kernel
version.


Let me try, no guarantees this answer is entirely correct, as I don't grok
much of the Linux VM, either:

Your question translates to this on 2.6.32 (from fs/proc/meminfo.c):

  1. What is accounted by nr_blockdev_pages()?  ("buffers" in meminfo)
     i.e. what is counted by block_device->bd_inode->i_mapping->nrpages
     (or what is address_space->nrpages).

  2. What is accounted by:
        global_page_state(NR_FILE_PAGES) - total_swapcache_pages -
            nr_blockdev_pages()?                ("cached" in meminfo)

It *looks* at first glance that nr_blockdev_pages() is counting the number
of pages in use by the block devices (I think it is all cache, i.e. backed
by the device itself).

http://www.linuxforums.org/forum/kernel/123844-why-sum-bdev-bd_inode-i_mapping-nrpages-not-nr_pagecache.html
http://lwn.net/Articles/218890/

Buffers counts memory in use by the block devices, and Cached is the page
cache minus the swap cache and block device.

Swap cache is your swap file/partitions.

> http://www.informit.com/content/images/0131453483/downloads/gorman_book.pdf

Unfortunately, it is outdated.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh


Reply to: