Buffer 和Cache 的区别

Buffer 和Cache 的区别
buffer 与cache 操作的对象就不一样。
buffer??缓冲??是为了提高内存和硬盘??或其他I/0 设备??之间的数据交换的速
度而设计的。
cache??缓存??是为了提高cpu 和内存之间的数据交换速度而设计。
cpu 在执行程序所用的指令和读数据都是针对内存的??也就是从内存中取得的。
由于内存读写速度慢??为了提高cpu 和内存之间数据交换的速度??在cpu 和内存之
间增加了cache??它的速度比内存快??但是造价高??又由于在cpu 内不能集成太多
集成电路??所以一般cache 比较小??以后intel 等公司为了进一步提高速度??又增加
了二级cache??甚至三级cache??它是根据程序的局部性原理而设计的??就是cpu
执行的指令和访问的数据往往在集中的某一块??所以把这块内容放入cache 后??cpu
就不用在访问内存了??这就提高了访问速度。当然若cache 中没有cpu 所需要的内
容??还是要访问内存的。
缓冲??buffers??是根据磁盘的读写设计的??把分散的写操作集中进行??减少磁
盘碎片和硬盘的反复寻道??从而提高系统性能。linux 有一个守护进程定期清空缓冲
内容??即写入磁盘????也可以通过sync 命令手动清空缓冲。举个例子吧??我这里有
一个ext2 的U 盘??我往里面cp 一个3M 的MP3??但U 盘的灯没有跳动??过了一会
儿??或者手动输入sync??U 盘的灯就跳动起来了。卸载设备时会清空缓冲??所以有
些时候卸载一个设备时要等上几秒钟。
修改/etc/sysctl.conf 中的vm.swappiness 右边的数字可以在下次开机时调节
swap 使用策略。该数字范围是0??100??数字越大越倾向于使用swap。默认为60??
可以改一下试试。--两者都是RAM 中的数据。
简单来说??buffer 是即将要被写入磁盘的??而cache 是被从磁盘中读出来的。
buffer 是由各种进程分配的??被用在如输入队列等方面。一个简单的例子如某
个进程要求有多个字段读入??在所有字段被读入完整之前??进程把先前读入的字段
放在buffer 中保存。
cache 经常被用在磁盘的I/O 请求上??如果有多个进程都要访问某个文件??于
是该文件便被做成cache 以方便下次被访问??这样可提高系统性能。

时间: 2024-08-02 11:02:44

Buffer 和Cache 的区别的相关文章

Linux内存学习之buffer和cache的区别详解

本文和大家分享的主要是linux 中 内存buffer 和 cache 的区别相关内容,一起来看看吧,希望对大家 学习linux有所帮助. 细心的朋友会注意到, 当你在 linux 下频繁存取文件后 , 物理内存会很快被用光 , 当程序结束后 , 内存不会被正常释放 , 而是一直作为 caching. 这个问题 , 貌似有不少人在问 , 不过都没有看到有什么很好解决的办法 . 那么我来谈谈这个问题 . 先来说说free 命令 [[email protected] ~]# free -m tota

【转】free命令、buffer与cache的区别

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中Buffer和Cache的区别

1. Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器,因为CPU的速度远远高于主内存的速度,CPU从内存中读取数据需等待很长的时间,而  Cache保存着CPU刚用过的数据或循环使用的部分数据,这时从Cache中读取数据会更快,减少了CPU等待的时间,提高了系统的性能. Cache并不是缓存文件的,而是缓存块的(块是I/O读写最小的单元):Cache一般会用在I/O请求上,如果多个进程要访问某个文件,可以把此文件读入Cache中,这样下一个进程获取CPU控制

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

原文链接:http://os.51cto.com/art/200709/56603.htm 我们一开始,先从Free命令说起. Free free 命令相对于top 提供了更简洁的查看系统内存使用情况: $ free total used free shared buffers cachedMem: 255268 238332 16936 0 85540 126384-/+ buffers/cache: 26408 228860Swap: 265000 0 265000 Mem:表示物理内存统计

linux 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.两者都是RAM中的数据.简单来说,buffer(缓冲)是即将要被写入磁盘的,而cache(缓存)是被从磁盘中读出来的 缓冲(buffers)

linux free命令中buffer与cache的区别

linux free命令中buffer与cache的区别 ~$ free total             used           free     shared   buffers     cached Mem:       1025204     981636      43568          0      38244     387808 -/+ buffers/cache:       555584      469620 Swap:      1931256    162

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

Free free 命令相对于top 提供了更简洁的查看系统内存使用情况: $ free total             used         free     shared     buffers     cached Mem:     255268     238332     16936     0             85540     126384 -/+ buffers/cache: 26408 228860 Swap:  265000         0        

linux中的buffer和cache的区别

***今天我们再来简单讨论下linux系统中关于Buffer和Cache的区别,buffer与cache操作的对象就不一样.``` 1.buffer(缓冲区) 是为了提高内存的硬盘(或其他i/o设备)之间的数据交换的速度而设计 1. 2.cache经常被用在磁盘io请求上,如果有多个进程都要访问某个文件,于是该文件被做成cache都被访问,这样可以提高系统的性能 | Column 1 | Column 2 | Column 3 | | -------- | -------- | --------

运维职责,buffer和cache什么区别?机房防止服务器断电,远程控制卡

1.运维职责·数据不能丢·网站7*24小时运行·用户体验要好2.buffer和cache什么区别?buffeer 缓冲区 数据写入到内存的buffer区域 写buffer' 写缓冲cache 缓存区 从内存中的cache区域进行读取 读cache 读缓存 机房防止服务器断电A. 双电源AB路(使用不同的变压器).B. UPS(不间断电源)蓄电池组 30分钟 最多一小时C. 柴油发电机+油罐D. 附近的加油站签订紧急供油协议4.远程控制卡dell iDrac作用:A. 远程控制与管理服务器B. 远