当数据从硬盘读入cpu是为何要设置缓冲区?

我的想法是 数据从 处理快的单位 流向 处理慢的单位 时才设置缓冲区!而从 慢单位 到快单位 时又设置缓冲区岂不是又要叠加一点时间?难道数据驻扎内存缓冲会比 直达CPU更快吗?

CPU的缓存是提高了CPU对内存反复的数据的处理速度.CPU要运算的数据都是从内存取来的 但是内存速度比CPU慢很多,CPU总是在干等,划不来, 于是在CPU里设计了高速缓存(容量相对内存很小) 事先把CPU可能会用到的数据从内存取到缓存, 由于预测机制的作用,在90%以上的情况下, CPU需要的数据就在缓存里面,很快就可以取到。 这样明显可以大幅提高系统的效率。 而硬盘的缓存是提高CPU与硬盘之间的速度.同样,内存里面的数据大部分是从硬盘取来的, 内存速度比硬盘要快几十倍,内存等硬盘读盘也等得很烦。 于是在硬盘里面设计了跟内存速度差不多的缓存 事先把内存可能用到的数据从硬盘读到缓存。 然后内存要数据的话,先到硬盘缓存找找, 实在找不到再让硬盘读盘。
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-07-26
CPU与内存之间是靠总线直接连接的,CPU与外存(硬盘)之间是通过总线上挂载的物理接口与外存对接,所以CPU与外存之间不能直接传递数据,这是设置缓冲区的原因之一,另外,缓冲区是实现并行数据通讯的必要手段,提高数据传输效率。
第2个回答  2019-07-26
CPU的处理速度很快,而硬盘读取数据的速度非常慢,常用数据存储在速度相对较快的缓存,可以提高效率,缓存没有的数据才会去硬盘调用。追问

你是复制粘贴的吧

本回答被网友采纳
相似回答