2015-01-27-从实验出发理解buffer与cache区别-吴伟顺

通过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理解成数据副本。

时间: 2024-10-10 12:42:57

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

linux buffer与cache区别

A buffer is something that has yet to be "written" to disk. A cache is something that has been "read" from the disk and stored for later use. 更详细的解释参考:Difference Between Buffer and Cache cache 和 buffer的区别: Cache: 1.高速缓存硬件,是位于CPU与主内存间的一

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

freefree 命令相对于top 提供了更简洁的查看系统内存使用情况: # free total used free shared buffers cached Mem: 255988 231704 24284 0 6432 139292 -/+ buffers/cache: 85980 170008 Swap: 746980 0 746980 Mem:表示物理内存统计 -/+ buffers/cached:表示物理内存的缓存统计 Swap:表示硬盘上交换分区的使用情况,这里我们不去关心.系统

Linux_free(buffer与cache区别)

一.free命令[[email protected]_202_12 /]# free -m             total       used       free     shared    buffers     cachedMem:          3072       2459        612          0        207       1803-/+ buffers/cache:        447       2624Swap:         1913 

free命令及buffer和cache区别

free命令可以显示Linux系统中空闲的.已用的物理内存及swap内存,及被内核使用的buffer.在Linux系统监控的工具中,free命令是最经常使用的命令之一. 1.命令格式: free [参数] 2.命令功能: free 命令显示系统使用和空闲的内存情况,包括物理内存.交互区内存(swap)和内核缓冲区内存.共享内存将被忽略 3.命令参数: -b  以Byte为单位显示内存使用情况. -k  以KB为单位显示内存使用情况. -m  以MB为单位显示内存使用情况. -g   以GB为单位

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

一:缓存是为了调节速度不一致的两个或多个不同的物质的速度,在中间对速度较快的一方起到一个加速访问速度较慢的一方的作用,比如CPU的一级.二级缓存是保存了CPU最近经常访问的数据,内存是保存CPU经常访问硬盘的数据,而且硬盘也有大小不一的缓存,甚至是物理服务器的raid 卡有也缓存,都是为了起到加速CPU 访问硬盘数据的目的,因为CPU的速度太快了,CPU需要的数据硬盘往往不能在短时间内满足CPU的需求,因此PCU缓存.内存.Raid 卡以及硬盘缓存就在一定程度上满足了CPU的数据需求,即CPU

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

Linux内核设计第一周 ——从汇编语言出发理解计算机工作原理 作者:宋宸宁(20135315) 一.实验过程 图1 编写songchenning5315.c文件 图2 将c文件汇编成32位机器语言 图3 将.s文件中的链接语句删除,获得最后的汇编代码 二.分析堆栈变化情况 三.总结 阐明对“计算机是如何工作的”的理解. ①计算机是依据冯诺依曼体存储结构,依据其核心思想——存储程序计算机工作模型,按程序编排的顺序,一步一步地取出指令,自动地完成指令规定的操作. ②从硬件的角度看,是通过总线连接C

buffer和cache怎么让你们解释的那么难理解?

对于一个即将踏上“系统运维”或者更加高大尚的工作“系统调优”,如果这不跟这两哥们搞好关系了,坑的不只有内存,更坑的是你拿着调优的钱却干着随时被调的活.因为作为一个系统运维人员来说监控和优化IO性能这是最有可能你生存下来的技能,为啥呢?因为你不仅给老板省了钱,还提高了机器的工作效率..虽然钱都进了老板兜里,但你渐渐地植入了他深深地脑海里,总有一天你比钱重要!好了闲话少扯,接下来说说这两个哥们到底是什么? 之前我自己也对到底buffer和cache是什么,有什么不同,什么时候用buffer,什么时候

业界顶级存储IO 性能分析工具Iometer 2015.01.23A1版本(基于2014年1.1.0版本)

篇首语 在存储界浪迹几年的人,或多或少都使用过一款或多款IO 测试工具来说明某款存储产品或者存储系统的性能表现.主流的存储厂商,在售前产品比拼测试阶段,客户一般都需要竞标者提供一些测试数据,而这些测试数据最好采用同一款第三方工具,基于相同的标准.迄今为止,这些工具中比较著名的有Iometer.Iozone.fio.vdbench 等. 笔者曾经有一段时间使用过Iometer,后来因为其支持平台类型过于狭窄而放弃.在去年的一个北美SDN项目中,由于需要进行性能数据比较,同时为便于北美工程师可以协同

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

Linux内核设计(第一周)--从汇编语言出发理解计算机工作原理 计算机工作原理 汇编指令 C语言代码汇编分析 by苏正生 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 从2月22日起,本学期的linux课程开始了.通过这两天的学习,觉得孟宁老师讲的真不错,条理清晰,举例适当.本周从计算机工作原理出发,回顾了冯诺依曼计算机结构,也回顾了汇编寄存器.汇编指令.C语言程序的汇编分析技巧,很