在电脑存储中什么是缓存 什么是缓冲?

打开设备管理器,在NVMe固态硬盘中勾选“关闭设备上的Windows写入高速缓存缓冲区刷新”。这句话特别拗口,缓存(Cache)是什么?缓冲(Buffer)又是什么?

在电脑存储中什么是缓存 什么是缓冲?

游民星空

下载游民App,掌握一手游戏情报

在电脑存储中什么是缓存 什么是缓冲?

极客网 未知 2018-11-19 15:27
0

什么是缓冲?

  现实中“缓冲”的出现频率要比“缓存”低很多。在设备管理器的网卡设置当中,可以看到接收缓冲与发送缓冲。缓冲的作用是平衡速度、流量整形,将大量零碎存取请求整合成平稳连续、较大规模的一次存取操作,从而提高处理效率。

游民星空

接下来我们回归正题,硬盘上的缓存和缓冲到底是什么?

  机械硬盘时代,由于盘片读取效能太差,需要有DRAM来承担缓存的作用,利用Read ahead将程序请求读取范围之外的一点点数据提前加载到DRAM芯片当中,希望靠“蒙对下一次读取请求”的方式来提高性能。所以机械硬盘时代更大的缓冲容量有机会带来更高的性能。

  东芝在1987年发明了NAND闪存,并在多年之后带来了固态硬盘的问世。由于闪存的读取速度非常快,Read ahead已经不能提供收益,所以固态硬盘的DRAM芯片中存储的并不是预读的数据,而是用于管理闪存逻辑-物理地址映射表的元数据。此时DRAM芯片的容量已经不再跟性能直接挂勾。

游民星空

  下图是东芝TR200固态硬盘拆解图。TR200是东芝推出的DRAM less方案3D闪存固态硬盘,也就是说TR200是没有DRAM芯片的。它的闪存映射表结构经过了优化,能够直接存储在闪存以及主控内集成的小容量SRAM当中。

游民星空

  尽管没有DRAM芯片,但是TR200的Toshiba TC58NC1010GSB主控依然具备SRAM来完成缓冲的作用。发送到TR200的随机写入请求会在SRAM当中进行整合排队,比如将几个字节的写入合并成至少一个闪存Page页大小(通常为16KB)的数据,然后写入到闪存当中。由于有闪存映射表的存在,对于电脑主机而言,这些写在一处(互相临近位置)的数据在LBA逻辑地址上有可能还是天各一方的随机分散状态。

  总结来说,固态硬盘当中既有缓存(SLC Cache)机制,也有缓冲(Buffer)机制,前者主要是为了提升爆发写入速度,后者则是为了降低随机写入的闪存写入放大率,提升随机写入的处理效率和响应速度,二者相辅相成,共同提升了固态硬盘的性能表现。

责任编辑:听风飞舞

APP精彩推荐打开游民APP查看更多

相关内容 打开游民APP查看更多

在线玩推荐更多