【问题标题】:Entries in /proc/meminfo/proc/meminfo 中的条目
【发布时间】:2010-10-14 02:11:44
【问题描述】:

我可以理解 /proc/meminfo 中包含的大部分信息,例如总内存、缓冲区、缓存等。你能告诉我下面列出的那些不太明显的信息是什么意思吗?

  • 匿名页面
  • 映射
  • 楼板
  • NFS_不稳定
  • 弹跳
  • VmallocTotal
  • VmallocUsed
  • VmallocChunk

如果有人想知道,我说的是 linux 命令 cat /proc/meminfo

的输出

【问题讨论】:

    标签: linux memory procfs


    【解决方案1】:

    来自RedHat

    VMallocTotal — 的总量 总内存,以千字节为单位 分配的虚拟地址空间。 VMallocUsed — 的总量 已用虚拟内存(以千字节为单位) 地址空间。 VMallocChunk - 的 最大的连续内存块,在 千字节,可用虚拟 地址空间。

    【讨论】:

    【解决方案2】:

    此信息的规范来源是/usr/src/linux/Documentation/filesystems/proc.txt。具体来说,

       AnonPages: Non-file backed pages mapped into userspace page tables
          Mapped: files which have been mmaped, such as libraries
            Slab: in-kernel data structures cache
    NFS_Unstable: NFS pages sent to the server, but not yet committed to stable
            storage
          Bounce: Memory used for block device "bounce buffers"
    VmallocTotal: total size of vmalloc memory area
     VmallocUsed: amount of vmalloc area which is used
    VmallocChunk: largest contigious block of vmalloc area which is free
    

    【讨论】:

    【解决方案3】:

    我的理解如下。
    我同意这些数字很难理解并且显示出不一致的值。

    • 内存总量

      = MemFree + Active + Inactive + Slab + PageTables + VmallocUsed + X
      (X : alloc_pages() (get_free_pages(), etc))
      

      但是最近内核的 vmallocused 值可能是错误的。 这是因为它计算了 VM_xxx 区域,例如 VM_IOREMAP、VM_MAP、...而不是 VM_ALLOC 区域。

      VM_IOREMAP 区域可以是内核之外的映射内存 内存管理,所以上面的公式可能不精确,或者完全错误。

      你可以这样做:

      • 查看/proc/vmallocinfo 自行整理所有条目并过滤,
      • 修改 fs/proc/mmu.c: get_vmalloc_info() 以仅在以下情况下计算区域 if(vma->flags & VM_ALLOC)
    • 活跃+不活跃

       = Buffers + Cached + SwapCached + AnonPages
      
    • 匿名页面

       = /proc/*/task/*/smaps anonymous area all sum
       (anonymous: no name|[heap]|/dev/zero|/dev/shm/*|[stack])
      

      虽然我无法匹配这些数字。如果您有任何线索,请参阅here 并帮助我。

    • 总页面缓存

       = Buffers + Cached + SwapCached
      
    • 平板

       = SReclaimable + SUnreclaim
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-28
      • 1970-01-01
      • 1970-01-01
      • 2020-01-13
      • 1970-01-01
      • 1970-01-01
      • 2017-09-14
      相关资源
      最近更新 更多