0. free版本命令
free -V
or free --version
output version information and exit
1. free from procps-ng 3.3.9
当打印为 free from procps-ng 3.3.9
,说明为旧版,free命令打印样例如下:
(free -g
结果)
total | used | free | shared | buffers | cached | |
---|---|---|---|---|---|---|
MEM: | 251 | 249 | 1 | 8 | 0 | 193 |
-/+ buffers/cache: | 55 | 195 | ||||
Swap: | 15 | 0B | 15 |
- total :总的物理内存大小 ,total=used+free
- used :已经使用的物理内存。一般情况这个值比较大。used=
buffers
+cached
(maybe addshared
also)+ -buffers/cache(used) - free :完全未使用的物理内存
- shared:应用程序共享的物理内存
- buffers: 缓存,主要用于
块设备
缓存,例如用户目录、inode值等(ls大目录可以看到这个值增加) - cached:缓存,主要用于缓存文件。
第二行中的
- 前个值表示-buffers/cache,used减去缓存值:-buffers/cache=used-buffers-cached,249-193约等于55
- 后个值表示+buffers/cache,free加上缓存值:+buffers/cache=free+buffers+cached, 1+193约等于195
2. free from procps-ng 3.3.10
total | used | free | shared | buffers/cached | available | |
---|---|---|---|---|---|---|
MEM: | 3.7G | 752M | 648M | 20M | 2.3G | 2.7G |
Swap: | 0B | 0B | 0B |
新版本的命令中, “-/+ buffers/cache” 例被取代了。内存分配改为total = used + free + cache,可用内存直接查看最后一列available即可