meminfo
该文件保存了整个系统的内存使用情况。
代码
内核中fs/proc/meminfo.c是用来创建这个文件的代码。其中主要也就是meminfo_proc_show这个函数。
以及相关数据采集的函数可以参考vm_stat
格式
MemTotal: 11164052 kB 总内存
MemFree: 4713252 kB 空闲
MemAvailable: 8871388 kB MemAvailable > MemTotal - MemFree
Buffers: 103928 kB
Cached: 4102152 kB
SwapCached: 0 kB
Active: 2949276 kB Active = Active(anon) + Active(file)
Inactive: 2858716 kB
Active(anon): 1568216 kB
Inactive(anon): 0 kB
Active(file): 1381060 kB
Inactive(file): 2858716 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2097148 kB
SwapFree: 2097148 kB
Zswap: 0 kB
Zswapped: 0 kB
Dirty: 56 kB
Writeback: 0 kB
AnonPages: 1601952 kB AnonPages > Active(anon) + Inactive(anon)
Mapped: 645472 kB
Shmem: 98124 kB
KReclaimable: 233628 kB
Slab: 398252 kB
SReclaimable: 233628 kB
SUnreclaim: 164624 kB
KernelStack: 14688 kB
PageTables: 29616 kB
SecPageTables: 0 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 7679172 kB
Committed_AS: 5980692 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 33120 kB
VmallocChunk: 0 kB
Percpu: 6784 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
FileHugePages: 0 kB
FilePmdMapped: 0 kB
Unaccepted: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
Hugetlb: 0 kB
DirectMap4k: 128960 kB
DirectMap2M: 11354112 kB其中MemAvailable > MemTotal - MemFree是因为有些内存是可以reclaim的。
但是AnonPages > Active(anon) + Inactive(anon)我不太理解。就算不一样,也应该是小于才对吧?
使用
Last updated