/proc/meminfo内存信息说明

来自姬鸿昌的知识库
跳到导航 跳到搜索
[root@iZ8vbcjkeqbrdmmbt23vboZ ~]# cat /proc/meminfo
MemTotal:        1881892 kB
MemFree:           87212 kB
MemAvailable:     860688 kB
Buffers:           69228 kB
Cached:           836260 kB
SwapCached:            0 kB
Active:          1044980 kB
Inactive:         569368 kB
Active(anon):     751432 kB
Inactive(anon):     8892 kB
Active(file):     293548 kB
Inactive(file):   560476 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:        708880 kB
Mapped:           129696 kB
Shmem:             51464 kB
Slab:             120676 kB
SReclaimable:     101232 kB
SUnreclaim:        19444 kB
KernelStack:        3680 kB
PageTables:         8728 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:      940944 kB
Committed_AS:    2566620 kB
VmallocTotal:   34359738367 kB
VmallocUsed:        9016 kB
VmallocChunk:   34359724540 kB
HardwareCorrupted:     0 kB
AnonHugePages:    149504 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       69504 kB
DirectMap2M:     2027520 kB
DirectMap1G:           0 kB

MemTotal:

所有可用的内存大小,物理内存减去预留位和内核使用。系统从加电开始到引导完成,firmware/BIOS要预留一些内存,内核本身要占用一些内存,最后剩下可供内核支配的内存就是MemTotal。这个值在系统运行期间一般是固定不变的,重启会改变。

MemFree:

表示系统尚未使用的内存。

MemAvailable:

真正的系统可用内存,系统中有些内存虽然已被使用但是可以回收的,比如cache/buffer、slab都有一部分可以回收,所以这部分可回收的内存加上MemFree才是系统可用的内存

Cached:

分配给文件缓冲区的内存,例如vi一个文件,就会将未保存的内容写到该缓冲区