缓存(cached)是把读取过的数据保存起来,重新读取时若命中(找到需要的数据)就不要去读硬盘了,若没有命中就读硬盘。其中的数据会根据读取频率进行组织,把最频繁读取的内容放在最容易找到的位置,把不再读的内容不断往后排,直至从中删除。   

缓存(cache)实际并不是缓冲文件的,而是缓冲块的,块是磁盘I/O操作的最小单元(在Linux中,它们通常是1KB)。这样,目录、超级块、其它文件系统的薄记数据以及非文件系统的磁盘数据都可以被缓冲了。   

如果缓存有固定的大小,那么缓存太大了也不好,因为这会使得空闲的内存太小而导致进行交换操作(这同样是慢的)。为了最有效地使用实际内存,Linux自动地使用所有空闲的内存作为高速缓冲,当程序需要更多的内存时,它也会自动地减小缓冲的大小。   

缓冲(buffers)是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统***能。linux有一个守护进程定期清空缓冲内容(即写磁盘),也可以通过sync命令手动清空缓冲。举个例子吧:我这里有一个ext2的U盘,我往里面cp一个3M的 MP3,但U盘的灯没有跳动,过了一会儿(或者手动输入sync)U盘的灯就跳动起来了。卸载设备时会清空缓冲,所以有些时候卸载一个设备时要等上几秒钟。   

两者都是RAM中的数据。简单来说,buffer是即将要被写入磁盘的,而cache是被从磁盘中读出来的。   

buffer是由各种进程分配的,由进程和系统一起管理.被用在如输入队列等方面,一个简单的例子如某个进程要求有多个字段读入,在所有字段被读入完整之前,进程把先前读入的字段放在buffer中保存。   

cache经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成cache以方便下次被访问,这样可提供系统***能。   

综上所述可以理解为cache系统管理, buffer由进程和系统一起管理.

转载于:https://blog.51cto.com/fscaps/1424541

buffers和cache的区别相关推荐

  1. Linux操作系统中内存buffer和cache的区别

    我们一开始,先从Free命令说起. free 命令相对于top 提供了更简洁的查看系统内存使用情况: $ free                      total  used   free  s ...

  2. Linux中内存buffer和cache的区别

    Linux中内存buffer和cache的区别 分类: LINUX 原文地址:Linux中内存buffer和cache的区别 作者:platinaluo 细心的朋友会注意到,当你在linux下频繁存取 ...

  3. Buffer和Cache的区别

    Buffer和Cache的区别 缓存(cached)是把读取过的数据保存起来,重新读取时若命中(找到需要的数据)就不要去读硬盘了,若没有命中就读硬盘.其中的数据会根据读取频率进行组织,把最频繁读取的内 ...

  4. Linux内存buffer和cache的区别

    在Linux的内存分配机制中,优先使用物理内存,当物理内存还有空闲时(还够用),不会释放其占用内存,就算占用内存的程序已经被关闭了,该程序所占用的内存用来做缓存使用,对于开启过的程序.或是读取刚存取过 ...

  5. Linux操作系统中内存buffer和cache的区别--从free命令说起(转)

    原文链接:http://os.51cto.com/art/200709/56603.htm 我们一开始,先从Free命令说起. Free free 命令相对于top 提供了更简洁的查看系统内存使用情况 ...

  6. Linux中Buffer和Cache的区别

    今天我们再来讨论下linux系统中关于Buffer和Cache的区别,buffer与cache操作的对象就不一样. 1.buffer(缓冲) 是为了提高内存和硬盘(或其他I/O设备)之间的数据交换的速 ...

  7. Buffers与cached啥区别

    转自: https://www.cnblogs.com/argb/p/3448744.html  A buffer is something that has yet to be "writ ...

  8. linux配置内存buffer,Linux中内存buffer和cache的区别

    Linux中内存buffer和cache的区别 发布时间:2007-08-31 09:52:55来源:红联作者:ivepace free free 命令相对于top 提供了更简洁的查看系统内存使用情况 ...

  9. Linux下内存buffer和cache的区别

    滥觞:网海拾贝 Free free 命令相干于top 供应了更简便的查察体系内存运用环境:  $ free total used free shared buffers cachedMem: 2552 ...

最新文章

  1. 文末惊喜福利 | 盘点2021主流架构创新实践
  2. 鸟哥Linux私房菜基础学习篇 第二部分 Linux 文件、目录与磁盘格式_Linux文件权限与 目录配置_Linux文件与目录管理...
  3. 云南计算机一级没有开考吗,2020年3月云南计算机一级考试时间
  4. zoj 1115 Digital Roots
  5. oracle 序列的概念与使用步骤
  6. 360移动技术开放日 聚焦移动前沿技术(有福利)
  7. Apache Commons Codec 1.7 发布
  8. php扩展拦截请求,PHP的拦截器实例分析
  9. hdu5791(DP)
  10. 算法复习——带修改莫队(bzoj2453)
  11. 使用虚拟机win7安装_STEP7 V5.6
  12. 关于转换QQ消息中系统表情,自定义表情和截图的函数
  13. 唯品会等被纳入MSCI指数,中概股迎来春天
  14. [电脑驱动向]笔记本键盘失灵,电脑插耳机没反应,不要着急拿去物理维修,可能是bios驱动需要更新
  15. 32个企业软件门类名称和释义
  16. 手机照片免费转JPG格式怎么做?教你两个法子快速转换
  17. 全球最大的已泄漏密码库现可公开访问下载:你的密码有人泄漏过吗?
  18. 【点云3D目标检测】IA-SSD报错:Expected isFloatingType(grads[i].scalar_type()) to be true, but got false.
  19. 【转】win10录屏快捷键报错显示需要新应用打开ms-gamingoverlay
  20. Java实现斗地主(基础版)

热门文章

  1. 圆圈在动吗?这个骗过人眼的动图火了,LeCun解释原理:和CNN对抗攻击类似
  2. 20189218 2018-2019-2 《密码与安全新技术专题》第9周作业
  3. linux top命令查看内存及多核CPU的使用讲述【转】
  4. Linux 时钟精度 与 PostgreSQL auto_explain (explain timing 时钟开销估算)
  5. css权重计算方法浅谈
  6. shell 下使用 echo 打印彩色字体及彩色背景
  7. linux中将文本中的单词换掉的指令_从零开始学Linux运维|19.文本处理相关命令(2)...
  8. 计算机网络基础 — 网络设备转发原理
  9. Linux Kernel TCP/IP Stack — L4 Layer
  10. Linux 操作系统原理 — 文件系统 — 管理与优化