#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中能释放的部分;正常使用又会上涨