Linux&&FREE命令详解

各行含义详解

在这里插入图片描述

第一行的输出是从操作系统(OS)的角度来看的

计算机上一共有: (Mem.total)8133084KB(缺省时free的单位为KB)物理内存; 在这些物理内存中有(Mem.used)6854048KB被使用了; 还用(Mem.free)1279036KB是可用的。
其中,Mem.total = Mem.used + Mem.free

  • Mem.shared:表示被几个进程共享的内存的,现在已经deprecated,其值总是0(当然在一些系统上也可能不是0,主要取决于free命令是怎么实现的)。
  • Mem.buffers:表示被OS buffer住的内存,buffer是用于存放要输出到disk(块设备)的数据的.
  • Mem.cached:表示被OS cache的内存,cache是存放从disk上读出的数据

Linux和其他成熟的操作系统(例如windows),为了提高IO read的性能,总是要多cache一些数据,这也就是为什么Mem.cached比较大,而Mem.free比较小的原因。

第二行是从一个应用程序的角度看系统内存的使用情况

- buffers/cache.used:表示一个应用程序认为系统被用掉多少内存.
+ buffers/cache.free:表示一个应用程序认为系统还有多少内存.
因为被系统cache和buffer占用的内存可以被快速回收,所以通常+ buffers/cache.free比- buffers/cache.used会大很多。
- buffers/cache.used = Mem.used - Mem.buffers - Mem.cached
+ buffers/cache.free = Mem.free + Mem.buffers + Mem.cached
free命令的所有输出值都是从/proc/meminfo中读出的 
释放掉被系统cache占用的数据(Mem.cached)

echo 3 > /proc/sys/vm/drop_caches

第四行为交换区的信息

分别是交换的总量(Swap.total)2097148KB(total),使用量(Swap.used)122836KB(used)和有多少空闲的交换区(Swap.free)1974312(free)

命令参数介绍

-b  以Byte为单位显示内存使用情况。
-k  以KB为单位显示内存使用情况。
-m  以MB为单位显示内存使用情况。
-g 以GB为单位显示内存使用情况。
-o  不显示缓冲区调节列。
-s <间隔秒数>  持续观察内存使用状况。
-t  显示内存总和列。
-V  显示版本信息。
参考资料:
https://www.cnblogs.com/kex1n/p/6010496.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值