存储器在计算机组成结构占据很重要的位置。对计算机来说,有了存储器,就具备了记忆能力,那么计算机就可以存储程序和数据。
通用的计算机存储层次至少有三级:
- CPU寄存器
- 主存
- 辅存
在较高档的计算机中,还可以根据具体的功能分工细划为寄存器、高速缓存、主存储器、磁盘缓存、固定磁盘、可移动存储介质等6层。

在存储层次中越往上,存储介质的访问速度越快,价格也越高,相对存储容量也越小。
寄存器、高速缓存、主存储器和磁盘缓存均属于操作系统存储管理的管辖范畴,掉电后它们存储的信息不再存在。
固定磁盘和可移动存储介质属于设备管理的管辖范畴,它们存储的信息将被长期保存。
寄存器、主存储器又被称为可执行存储器。
CPU
CPU:Central Process Unit中央处理器单元,即CPU属于处理器。
CPU与(内存、外存)是不同的概念,CPU是一个独立的概念,而(内存、外存)是指对存储器的划分,内存的速度较外存的速度快,并且内存具有“掉电信息全部消失”的特性,而外存则具有“掉电信息也不会丢失”的特性。
主存
主存又称为内存指计算机中的内存条,是用来运行程序,不能用来永久存储数据。是CPU能直接寻址的存储空间,它的特点是存取速率快。内存是电脑中主要部件,它是相对于外存来说。 内存一般采用半导体存储单元,包括随机存储器(RAM)即主存储器、只读存储器(ROM)和高级缓存(Cache),磁盘缓存。
随机存储器(RAM):(Random Access Memory)我们不仅可以从中读取数据,而且还可以写入数据。但是机器电源关闭时,它中数据就会丢失。内存条(SIMM)就是把RAM集成块集中在一小块电路板上。一般是动态RAM。
只读存储器(ROM):(Read Only Memory)它是把数据或程序永久保存在其中,不能更改,只能读取。即使机器断电,数据也不会丢失。
高级缓存(Cache):它是介于CPU与内存之间的静态RAM,它的读写速度比内存还要快, 当CPU在内存中读取或写入数据时,常用的数据会被保存在高级缓冲存储器中,当下次访问该数据时,CPU直接读取高级缓冲存储器,而不是更慢的内存。对于缓存的问题下文会详细讲解。
辅存
辅存有叫做外存包括磁盘,可移动存储介质。
磁盘就是计算机硬盘,可移动存储介质就是U盘,光盘一类的。
缓存
首先缓存是CPU的一部分,它存在于CPU中
CPU存取数据的速度非常的快,一秒钟能够存取、处理十亿条指令和数据(术语:CPU主频1G),而内存就慢很多,快的内存能够达到几十兆就不错了,可见两者的速度差异是多么的大。
缓存是为了解决CPU速度和内存速度的速度差异问题。
内存中被CPU访问最频繁的数据和指令被复制入CPU中的缓存,这样CPU就可以不经常到象“蜗牛”一样慢的内存中去取数据了,CPU只要到缓存中去取就行了,而缓存的速度要比内存快很多。
其次注意两点:
- 因为缓存只是内存中少部分数据的复制品,所以CPU到缓存中寻找数据时,也会出现找不到的情况(因为这些数据没有从内存复制到缓存中去),这时CPU还是会到内存中去找数据,这样系统的速度就慢下来了,不过CPU会把这些数据复制到缓存中去,以便下一次不要再到内存中去取。
- 因为随着时间的变化,被访问得最频繁的数据不是一成不变的,也就是说,刚才还不频繁的数据,此时已经需要被频繁的访问,刚才还是最频繁的数据,现在又不频繁了,所以要依靠一定的算法。
- 关于一级缓存和二级缓存
为了分清这两个概念,我们先了解一下RAM
RAM和ROM相对的,RAM是掉电以后,其中信息就消失那一种,ROM在掉电以后信息也不会消失那一种
RAM又分两种,
一种是静态RAM,SRAM;一种是动态RAM,DRAM。前者的存储速度要比后者快得多,我们现在使用的内存一般都是动态RAM。
缓存通常都是静态RAM,速度是非常的快,
但是静态RAM集成度低(存储相同的数据,静态RAM的体积是动态RAM的6倍),
价格高(同容量的静态RAM是动态RAM的四倍),
为了提高系统的性能和速度,我们增加一些高速动态RAM做为缓存,**这些高速动态RAM速度要比常规动态RAM快,但比原来的静态RAM缓存慢,**我们把原来的静态ram缓存叫一级缓存,而把后来增加的动态RAM叫二级缓存。
一级缓存和二级缓存中的内容都是内存中访问频率高的数据的复制品(映射),它们的存在都是为了减少高速CPU对慢速内存的访问。
通常CPU找数据或指令的顺序是:先到一级缓存中找,找不到再到二级缓存中找,如果还找不到就只有到内存中找了
注意高速缓存和磁盘缓存
首先,高速缓存上文已经寿命是为了解决CPU速度和内存速度的速度差异问题。而磁盘缓存是为了减少CPU透过i/o读取磁盘机的次数,提升磁盘io效率。
两个都是内存中的一部分。
本文详细讲解了计算机存储器的层次结构,包括CPU寄存器、主存、辅存,特别是缓存的层级,如高速缓存和磁盘缓存。CPU与内存是不同概念,主存(内存)用于运行程序,数据无法永久保存。缓存作为内存和CPU之间的桥梁,有效解决了速度差异问题,其中一级缓存速度最快,二级缓存次之。磁盘缓存则提高了磁盘I/O效率。
&spm=1001.2101.3001.5002&articleId=104484185&d=1&t=3&u=c94cef80468c44359da510c466bf4f03)
464

被折叠的 条评论
为什么被折叠?



