命令 [root@localhost ~]# free -m total used free shared buffers cached Mem: 7869 7651 218 1 191 5081 -/+ buffers/cache: 2378 5490 Swap: 478 139 339 计算
这里使用1、2 分别代表第一行和第二行的数据
total1:表示物理 内存总量 used1:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用 free1:未被分配的内存 shared1:共享内存,一般系统不会用到,这里也不讨论 buffers1: 系统分配但未被使用的buffers 数量 cached1:系统分配但未被使用的cache 数量 used2:实际使用的buffers 与cache 总量,也是实际使用的内存总量 free2:未被 使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存可以整理出如下等式
total1 = used1 + free1 total1 = used2 + free2 used1 = buffers1 + cached1 + used2 free2 = buffers1 + cached1 + free1buffers和cache其实也是内存的一部分,这部分特殊的内存是可以回收的,甚至如果需要我们还可以将这部分buffers和cache给释放出来.
所以,观察或计算内存使用情况时,一般看used2和free2的大小,能知道真正被使用和空闲的内存有多少
参数 -b 以Byte为单位显示内存使用情况。 -k 以KB为单位显示内存使用情况。 -m 以MB为单位显示内存使用情况。 -g 以GB为单位显示内存使用情况。 -o 不显示缓冲区调节列。 -s <间隔秒数> 持续观察内存使用状况。 -t 显示内存总和列。 -V 显示版本信息。