1、命令简介
free (free) 命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。
2、用法
free [-b | -k | -m | -g | -h] [-o] [-s delay ] [-c count ] [-a] [-t] [-l] [-V]
3、选项
-b 以Byte为单位显示内存使用情况。
-k 以KB为单位显示内存使用情况。
-m 以MB为单位显示内存使用情况。
-g 以GB为单位显示内存使用情况。
-h 以human readable方式输出
-o 不显示缓冲区调节列。
-s<间隔秒数> 持续观察内存使用状况。
-t 显示内存总和列。 RAM+SWAP
-V 显示版本信息。
4、示例
示例1:free命令说明
第二行是从OS的角度来看,因为对于OS,buffers/cached 都是属于被使用
total:3830 |
总计物理内存的大小 |
used:1262 |
已使用内存大小 |
free:2567 |
可用内存大小 |
Shared:3 |
多个进程共享的内存大小 |
Buffers/cached |
磁盘缓存的大小 |
第三行所指的是从应用程序角度来看,对于应用程序来说,buffers/cached 是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。
(-buffers/cache) used内存数 |
第一部分Mem行中的 used – buffers – cached |
1262-129-784=349 |
(+buffers/cache) free内存数 |
第一部分Mem行中的 free + buffers + cached |
2567+129+784=3481 |
第四行是交换分区swap的,也就是我们通常所说的虚拟内存。
8143 |
交换分区总量 |
0 |
已用交换分区 |
8143 |
可用交换分区 |
示例2:free -h 与指定单位