内存缓存和缓存内存有什么区别?

时间:2019-01-01 20:25:40

标签: caching memory-management

如果我没记错的话,RAM缓存用于加速驱动器上的文件操作,而RAM缓存用于加速CPU本身?有人可以澄清吗?

1 个答案:

答案 0 :(得分:0)

两个概念都完全不同。

Ram缓存描述了一种软件机制,该机制通过复制ram中的信息来加快访问时间长的数据的访问。操作系统将其保存在ram内存中,是磁盘或网络文件系统中最常用的块的副本。但是,Web服务器或代理也使用相同的机制来跟踪频繁使用的网页,SQL Server等。磁盘访问通常约为1ms,而ram访问时间则要快10000倍。当涉及网络时,收益甚至更大。

缓存是一个硬件概念。它是与处理器关联的快速存储器,旨在加速存储器访问。使用高速缓存时,典型的存储器访问时间可以减少2个数量级(从100 ns减少到1 ns)。可以加速所有内存访问,包括数据是否属于“内存缓存”的一部分。

缓存的大小由您的硬件决定。高速缓冲存储器在很大程度上独立于编程器,并且没有方便的方法来确定哪些数据保留在高速缓存中。 (但是了解缓存的工作方式是软件优化的重要组成部分)。 对于ram缓存,情况完全不同,程序员决定“ ram缓存”的大小以及数据从缓存中输入或弹出的方式。