buffer 和 cache 的区别
2016-07-04 10:36
183 查看
buffer和cache统称为缓存,功能和作用上却有所区别:
1)buffer,内存缓冲区,各进程产生的文件临时存放区,一定时间段内统一写入磁盘,减少磁盘碎片和 硬盘的反复寻道,从而提高系统性能;
2)cache,内存缓存区,经常被用在磁盘的I/O请求上,如果有文件频繁被访问到,系统会将文件缓存在 cache区,供CPU进程等访问;CPU中的一级缓存、二级缓存、甚至是三级缓存就是为了解决读取内存 速度瓶颈;
而在Linux中可用内存到底怎么计算?
Linux是尽可能使用内存原则,内存会把剩余的空间申请为cache,而cache不属于free
当系统运行时间很长,我们会发现cache很大,就是这个道理
需要注意的是,当我们看到系统内存使用率很高,free几乎为0时,并不代表系统内存容量有瓶颈!只是系统充分发挥了内存作用。而当有进程需要申请大文件内存时,内核会将部分cache空间回收,回收的内存再分配给进程程序使用。
SO...
可用内存= free + buffer + cache
内存可用率=1 - (buffer used / total)=1-(237/981)=76%
而不是:170/981=17%
1)buffer,内存缓冲区,各进程产生的文件临时存放区,一定时间段内统一写入磁盘,减少磁盘碎片和 硬盘的反复寻道,从而提高系统性能;
2)cache,内存缓存区,经常被用在磁盘的I/O请求上,如果有文件频繁被访问到,系统会将文件缓存在 cache区,供CPU进程等访问;CPU中的一级缓存、二级缓存、甚至是三级缓存就是为了解决读取内存 速度瓶颈;
而在Linux中可用内存到底怎么计算?
Linux是尽可能使用内存原则,内存会把剩余的空间申请为cache,而cache不属于free
当系统运行时间很长,我们会发现cache很大,就是这个道理
需要注意的是,当我们看到系统内存使用率很高,free几乎为0时,并不代表系统内存容量有瓶颈!只是系统充分发挥了内存作用。而当有进程需要申请大文件内存时,内核会将部分cache空间回收,回收的内存再分配给进程程序使用。
SO...
可用内存= free + buffer + cache
内存可用率=1 - (buffer used / total)=1-(237/981)=76%
而不是:170/981=17%
相关文章推荐
- jQuery实现订单提交页发送短信功能前端处理方法
- 实用jquery操作表单元素的简单代码
- Myeclipse新建JSP文件默认生成代码详解
- web前端开发笔记
- web前端简单布局
- 【腾讯云】配置安装node
- html控件宽度长度最好写比例
- js函数(比较全)
- jQuery实现左侧导航模块的显示与隐藏效果
- jquery事件有关问题!对象 click和document click冲突有关问题
- JQuery,UIbootstrap风格弹出层
- 编写Javascript时的注意事项
- React-Native学习指南
- HTML表单的类型和使用方法
- NYOJ 209 && POJ 2492 A Bug's Life (并查集)
- 归并排序-剑指offer
- 将List对象列表转换成JSON格式的类实现方法
- 【JavaScript】之BOM
- jQuery解析与处理服务器端返回xml格式数据的方法详解
- Jquery filter()方法简介