通過 meminfo 文件查看
root@aliyun:~# ll -h /proc/meminfo
-r--r--r-- 1 root root 0 Jun 18 14:11 /proc/meminfo 注意這個內存文件大小爲 0
root@aliyun:~# cat /proc/meminfo
MemTotal: 2041256 kB # 1093M $$$ total
MemFree: 221828 kB # 216M $$$ free
MemAvailable: 1553252 kB # 1516.8M $$$ available
Buffers: 185624 kB # 181M $$$ buffers kernel buffers
Cached: 1183072 kB # 1155.3M $$$ cache page cache
SwapCached: 0 kB
Active: 748952 kB # 731.4M
Inactive: 872508 kB # 70.8M
Active(anon): 159244 kB # 155.5M
Inactive(anon): 96264 kB # 94M
Active(file): 589708 kB # 575.9M
Inactive(file): 776244 kB # 758M
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 969964 kB # 947M
SwapFree: 969964 kB # 947M
Dirty: 48 kB
Writeback: 0 kB
AnonPages: 252788 kB # 246.9M
Mapped: 78052 kB # 76M
Shmem: 2744 kB $$$ shared
Slab: 165868 kB # 162M
SReclaimable: 149608 kB #146M $$$ cache slabs
SUnreclaim: 16260 kB # 15.9M
KernelStack: 2652 kB
PageTables: 4384 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 1990592 kB # 1944M
Committed_AS: 841632 kB # 822M
VmallocTotal: 34359738367 kB # 32T
VmallocUsed: 0 kB
VmallocChunk: 0 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 67456 kB # 66M
DirectMap2M: 2029568 kB #1982M
DirectMap1G: 0 kB
通過 free 命令查看
free 版本
root@aliyun:~# free -V
free from procps-ng 3.3.12
root@aliyun:~# free --wide
total used free shared buffers cache available
Mem: 2041256 294760 220628 2736 188120 1337748 1556388
Swap: 969964 0 969964
meminfo 和 free 對應關係
free |
physical |
swap |
total |
MemTotal |
SwapTotal |
used |
used = total - free - buffers - cache |
|
free |
MemFree |
SwapFree |
shared |
Shmem |
|
buffers |
buffers |
|
cache |
Cached、SReclaimable |
|
buffer/cache |
buffer/cache = buffers + cache |
|
avaliable |
MemAvailable |
|
References
- https://man7.org/linux/man-pages/man1/free.1.htm
- memory map of a process
- Linux 喫掉很多內存
- meminfo