#free [参数] 显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer

-h   自动转换单位 易读模式

-b  以Byte为单位显示内存使用情况。 

-k  以KB为单位显示内存使用情况。 

-m  以MB为单位显示内存使用情况。

-g   以GB为单位显示内存使用情况。 

-o  不显示缓冲区调节列。 

-s<间隔秒数>  持续观察内存使用状况。 

-t  显示内存总和列。 

-V  显示版本信息。 

#free--------total     :used   :free :Shared            :Buffers/cached:内存总大小:已使用  :可用 :多个进程共享的内存总额 :磁盘缓存的大小:(-/+ buffers/cached):used      :free             :已使用多大  :可用有多少:Swap:          2.0G        0B        2.0G

--------

- buffers/cached= used(第一行) - buffers - cached

实际上是程序当前"真实使用"的"物理内存"的大小。

+ buffers/cached= buffers + cached

两个加起来可以理解为"暂时借给"系统作为"缓冲区"使用的内存大小。

  buffer  实际上用来存储文件系统的 元数据

  cache   则缓存了近期 读写过的文件的内容

可用内存=系统free memory + buffers + cached。

      =total - buff/cach used

cat /proc/sys/vm/swappiness

swappiness=0表示最大限度使用物理内存,然后才是 swap空间

swappiness=100表示积极使用swap分区,并且把内存数据及时搬运到swap空间里

echo 3 > /proc/sys/vm/drop_caches

"3"表示释放所有buffers和cached中能释放的部分;正常使用又会上涨