JavaSEAndroid知识

内存和缓存的区别

2017-03-01  本文已影响2241人  markRao

今天看书的时候又看到了内存和缓存,之所以说又,是因为之前遇到过查过资料,但是现在又忘了(图侵删)。

所以又复习一遍,记录一下,有所纰漏的地方,欢迎指正。

同志们,上图并不是内存和缓存中的任何一个,那有的小伙伴会问了,啥也不是,你怎么强行发图,别急,慢慢道来。

上图是中央处理器即CPU的图片,一般来说缓存都是集成到CPU里面的。

众人:“这就是你找不到缓存的图片理由”?

如果按存取数据的速度相比,缓存是比内存快非常多的,我们电脑的操作系统会为应用程序分配好内存,但是由于内存的存取效率比较低下(相对于CPU的处理速度而言),缓存就是为了解决高速CPU对慢速内存的存取。

还有一个概念,就是一级缓存和二级缓存。

在这之前,先说一下RAM(暂时的、动态的存储数据,具体点就是我们通常说的内存条)和ROM(永久的、固定的存储数据,通俗讲就是我们说的光盘、dvd、手机内存卡等)。

RAM是掉电的,掉电的意思就是设备关机后RAM内存储的数据全部清空,ROM内的数据依然存在。

RAM有两种,静态和动态,静态RAM比动态RAM快。

静态RAM集成度比较低,存储相同的数据,静态RAM比动态RAM所花费的体积大约为六倍。

同样的容量,静态RAM的价格是动态RAM的四倍。

我们要知道一个道理,缓存作为静态RAM都是比较昂贵的,所以不要幻想什么加大缓存什么的。

但是我们有一个折中的办法,就是加大高速动态RAM作为缓存,比常规动态RAM要快,当然速度和静态RAM还是有一定的差距(没办法,都是钱闹的/(ㄒoㄒ)/~~)。

RAM中存储的都是设备使用频率比较高的数据和指令,它们都是从内存中复制而来的,这是由一套算法所维护的,与此同时,RAM内存储的东西并不是固定的,会跟着时间和使用习惯的改变而改变,一句话,内部保持的数据都是由算法所决定的。CPU在工作时,先去找静态RAM(一级缓存),然后再去找后加的高速动态RAM(二级缓存),最后内存。

最后再发一张内存条的图

上一篇下一篇

猜你喜欢

热点阅读