缓冲区理解

首先实名Diss百度百科中 缓冲区分析 中对于 电脑缓冲区:缓冲区又称为缓存 这一基础概念的错误。然后我在详细查阅资料和结合个人理解后,说说自己对于缓冲区的理解。

在讲缓冲区之前,我们要先介绍下内存的作用。

内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。也就是说:只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行。

我们平常使用的程序,如Windows操作系统、打字软件、游戏软件等,一般都是安装在硬盘等外存上的,但仅此是不能使用其功能的,必须把它们调入内存中运行,才能真正使用其功能,我们平时输入一段文字,或玩一个游戏,其实都是在内存中进行的。

Cache(缓存)则是系统两端处理速度不匹配时的一种折衷策略。因为CPU和硬盘之间的速度差异越来越大,所以人们充分利用数据的局部性特征,通过使用存储系统分级的策略来减小这种差异带来的影响。

它位于CPU与内存之间,是一个读写速度比内存更快的存储器。当CPU向内存中写入或读出数据时,这个数据也被存储进高速缓冲存储器中。当CPU再次需要这些数据时,CPU就从高速缓冲存储器读取数据,而不是访问较慢的内存,当然,如需要的数据在Cache中没有,CPU会再去读取内存中的数据。

Buffer(缓冲区)是系统两端处理速度平衡(从长时间尺度上看)时使用的。它的引入是为了减小短期内突发I/O的影响,起到流量整形的作用。比如生产者——消费者问题,他们产生和消耗资源的速度大体接近,加一个buffer可以抵消掉资源刚产生/消耗时的突然变化。

posted @ 2019-01-23 21:45  JingWenxing  阅读(2400)  评论(0编辑  收藏  举报