系统当前实际可用内存=free+buffers+cached

系统当前实际可用内存=free+buffers+cached

free 命令显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存

参数

-b 显示内存的单位为字节

-k 显示内存的单位为 KB

-m 显示内存的单位为 M

-o 忽略缓冲区调节列

-t 总和信息

-s<时间> 每隔指定时间执行一次命令,单位为s

-h 以可读形式显示容量,需要free -V显示版本大于3.3

-V 版本信息

示例

例1

复制代码

代码如下:

root@tnak-VirtualBox:/home/tnak # free -s 3 #每3秒执行一次

201614120726444.png (506×138)

复制代码

代码如下:

root@tnak-VirtualBox:/home/tnak # free -m #以M为单位

201614120744641.png (510×66)

复制代码

代码如下:

root@tnak-VirtualBox:/home/tnak # free -k #以K为单位

201614120801575.png (507×65)

例2

free -h #以可读形式显示容量,需要procps-ng版本大于3.3

复制代码

代码如下:

$ free -h

201614120819710.png (642×46)

PS:返回信息说明

Mem:表示物理内存统计

-/+ buffers/cached:表示物理内存的缓存统计

Swap:表示硬盘上交换分区的使用情况,

第1行 Mem:

total:表示物理内存总量。

used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。

free:未被分配的内存。

shared:共享内存,一般系统不会用到,这里也不讨论。

buffers:系统分配但未被使用的buffers 数量。

cached:系统分配但未被使用的cache 数量。

total = used + free

第2行 -/+ buffers/cached:

used:也就是第一行中的used - buffers-cached 也是实际使用的内存总量。

free:未被使用的buffers 与cached 和未被分配的内存之和,这就是系统当前实际可用内存=free+buffers+cached。

因为buffers和cached是系统为了提高性能申请的内存数,实际上当应用程序需要此功能时,是可以使用这些内存的,所以对应用程序来说,这些内存也是可以使用的。

第三行则是针对交换控件,显示使用量(used)和有多少空闲的交换区(free)。

你可能感兴趣的:(linux)