通过du(find) 与 cat 体现buffer与cache差异实验:

实验表明:

1 通常 buffer << cache

2 "文件系统"相关内容(inode等)缓存在buffer,"文件系统"无关的(即文件内容)缓存在cache

同:

目的:提高linux的IO效率

属性:对程序是透明的 (everything is a file in linux)

IO层:缓存在内存的其他慢IO层的数据。 (IO : 网络 < 磁盘 < 内存 < cpu缓存)

异:

buffer's policy is first-in, first-out

cache's policy is Least Recently Used.

之前我简单以为:

buffer针对的是字符型设备,cache针对块设备。

经过今天学习后我理解的buffer与cache变成:

buffer通过管理(队列实现异步)优化IO速度,cache通过记忆(数据停留)优化IO速度。buffer理解成元素队列,cache理解成数据副本。

 

2015-01-27-从实验出发理解buffer与cache区别-吴伟顺的更多相关文章

  1. Linux 内存buffer与cache区别_003

    一.首先大概了解一下计算机CPU.Cache.Buffer.内存.硬盘.SWAP CPU也称为中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机 ...

  2. free命令(buffer与cache区别/linux查看空闲内存)

    自:http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html   Linux上free命令的输出. 下面是free的运行 ...

  3. Linux_free(buffer与cache区别)

    一.free命令[root@xen_202_12 /]# free -m             total       used       free     shared    buffers   ...

  4. Buffer与Cache区别 简要说明

    Buffer –  缓冲区 写 用户写入数据存储区域 解决写入冲突           CPU-Memoury-Disk Cache – 缓存区 读 用户读取缓存数据使用 临时存储 Disk-memo ...

  5. buffer和cache区别?

    写入数据到内存里,这个数据的内存空间称为缓冲区(buffer) 从内存读取数据,这个存储数据的内存空间称为缓存区(cache) 由于大部分网站以读取为主,写入为辅,所以并发写入一般不是问题.

  6. Free中的buffer和cache理解

    吐血推荐文章: Linux内存中的Cache真的能被回收么? free中的buffer和cache: redhat对free输出的解读 两者都是RAM中的数据.简单来说,buffer是即将要被写入磁盘 ...

  7. 缓存系列之一:buffer、cache与浏览器缓存

    缓存系列之一:buffer.cache与浏览器缓存 一:缓存是为了调节速度不一致的两个或多个不同的物质的速度,在中间对速度较快的一方起到一个加速访问速度较慢的一方的作用,比如CPU的一级.二级缓存是保 ...

  8. Linux内核设计第一周 ——从汇编语言出发理解计算机工作原理

    Linux内核设计第一周 ——从汇编语言出发理解计算机工作原理 作者:宋宸宁(20135315) 一.实验过程 图1 编写songchenning5315.c文件 图2 将c文件汇编成32位机器语言 ...

  9. Linux内核设计(第一周)——从汇编语言出发理解计算机工作原理

    Linux内核设计(第一周)——从汇编语言出发理解计算机工作原理 计算机工作原理 汇编指令 C语言代码汇编分析 by苏正生 原创作品转载请注明出处 <Linux内核分析>MOOC课程htt ...

随机推荐

  1. python —print

    今天开始学python了,“装X”安装了最新版本python 3.4.1 然后,print “hello world!" 就出错了... 一搜原来... python v3.0以后的版本pr ...

  2. freemaker分页模板

    <link href="${base}/res/pra/css/style.css" rel="stylesheet" type="text/c ...

  3. Yii2 TimestampBehavior行为

    <?php /** * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yii Software LLC * ...

  4. sql有几种删除表数据的方式

    有几种删除表数据的方式? truncate.delete和drop都可以删除数据. TRUNCATE TABLE删除表中的所有行,而不记录单个行删除操作. TRUNCATE TABLE 与没有 WHE ...

  5. UML 2中结构图的介绍

    原文: http://www.ibm.com/developerworks/cn/rational/rationaledge/content/feb05/bell/ 这是关于统一建模语言.即UML 里 ...

  6. Swift编程语言的相关资料

    苹果官方Swift文档<The Swift Programming Language> 苹果开发人员Swift文档及介绍 网友整理的Swift中文文档<Apple Swift编程语言 ...

  7. OPTIMIZE TABLE

    INNODB 不支持 mysql> OPTIMIZE TABLE t; +--------+----------+----------+----------------------------- ...

  8. c# switch case语句

    switch是一个控制语句,用于选择一个要执行的语句块. 一个switch语句包括一个或多个执行的语句块.每个语句块包括一个或多个case标签,case后接要执行的语句. 如下面的代码 Codeint ...

  9. js知识

    行为=事件+由该事件触发的动作 常用事件:onXxx onLoad           打开网页事件 onUnLoad       关闭事件 onClick        单击事件 onChange  ...

  10. Unity3D 关于运动模型

    首先,要让一个物体在3D世界里面运动起来. 要在一个具有碰撞器的面和一个具有碰撞器的体. 要具有碰撞器属性,不然其他物体会穿过的. 默认的碰撞器是一个具有阻碍效果的,如果让碰撞器具有了一个触发器属性I ...