cache和buffer

一、free命令是Linux查看内存使用情况的命令

1、 centos 7风格

[root@bogon init.d]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1824         771         484          10         569         858
Swap:          2047           0        2047

2、centos 6风格

[root@bogon ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           980        190        790          0         10         52
-/+ buffers/cache:        127        853
Swap:         1983          0       1983

3、MEM:表示无力内存统计

total:表示物理内存总量
used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
free:未被分配的内存。
shared:共享内存,一般系统不会用到,这里也不讨论。
buffers:系统分配但未被使用的buffers 数量。
cached:系统分配但未被使用的cache 数量。
-/+ buffers/cache:表示物理内存的缓存统计
used2:也就是第一行中的used – buffers-cached 也是实际使用的内存总量。 //used2为第二行
free2= buffers1 + cached1 + free1 //free2为第二行、buffers1等为第一行
free2:未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。 

4、-/+ buffers/cache:表示物理内存的缓存统计

used2:也就是第一行中的used – buffers-cached 也是实际使用的内存总量。 //used2为第二行
free2= buffers1 + cached1 + free1 //free2为第二行、buffers1等为第一行
free2:未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。 

5、swap

硬盘上交换分区的使用情况

二、buffers和cache

1、cache高速缓存,是位于CPU与主内存间的一种容量较小但速度很高的存储器。由于CPU的速度远高于主内存,CPU直接从内存中存取数据要等待一定时间周 期,Cache中保存着CPU刚用过或循环使用的一部分数据,当CPU再次使用该部分数据时可从Cache中直接调用,这样就减少了CPU的等待时间,提 高了系统的效率。

2、buffer:缓冲,用来保存即将要写入磁盘的数据,等积累了一定数量后一次性写入磁盘,这样能减少磁盘的I/O操作,提高读写效率

原文地址:https://www.cnblogs.com/baomanji/p/6566860.html