[root@Training ~]# free
total used free shared buffers cached
Mem: 515340 509008 6332 0 26408 363804
-/+ buffers/cache: 118796 396544
Swap: 1048568 0 1048568
free命令输出一共三行
Mem:表示从系统角度描述的内存使用情况
total:表示物理内存总量。
used:表示总计分配给缓存(包括下面的buffers和cached)使用的数量,但其中可能部
分缓存并没有使用,只是预先分配给操作系统。其实这个值通过是total-free算出
来的。
free:未被系统分配的内存。
shared:共享内存,一般系统不会用到,这里先不讨论。
buffers:系统分配但未被使用的buffers数量。
cached:系统分配但未被使用的cached数量。
buffer是用来存放系统暂时还没有写到硬盘上的数据
cached是用来存放系统从硬盘或者存储设备读出来的,以便以后使用的数据。
-/+ buffers/cache:表示从应用程序的角度描述内存的使用情况,也是我们应该关心的。
used:应用程序所使用的内存,也是实际使用的内存。
free:第一行中的未被使用的buffer,cached,free之和,也是系统当前实际可用的内存。
对于应用程序来说buffer和cache是等于可用的,因为它们的作用是为了提高文件读取性能,当应用程序需要用到内存的时候,buffer和cache可以很快的被回收。
Swap:是用来表示交换分区的使用情况的,如果used为0,则说明系统内存够用,无需用到交换分区。