cache和buffer

时间:2023-03-09 07:21:40
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操作,提高读写效率