计算机存储器-初识

一 存储器的分类

1 按在计算机中的作用分类

1)主存储器:简称主存,又称内存,用来存放计算机运行期间所需的大量程序和数据,通常由RAM组成,CPU可以直接随机的对其进行访问,也可以和Cache以及辅存交换数据。特点是容量较小,存取速度较快,价格较高。

2)辅助存储器:简称辅存,又称外存,用来存放当前暂时不用的数据和程序,以及一些需要永久性保存的信息。它不能与CPU直接交换信息,辅存中的信息必须调入主存后,才能为CPU所访问。其特点是容量极大,存取速度较慢。单位成本低。

3)高速缓存存储器:简称Cache,位于主存和CPU之间,通常由SRAM构成。用来存放正在执行的数据段和数据,以便CPU能高速的使用它们。Cache的存取速度可以和CPU的速度相匹配,但存储容量较小,价格较高。目前的高档计算机通常将它们制作在CPU中。

      这里涉及到程序的局部性原理:程序访问的局部性原理包括时间局部性和空间局部性。前者是指在最近的未来要用到的信息,很可能是现在正在使用的信息,这是因为程序存在循环。后者是指在最近的未来要用到的信息,很可能与现在正在使用的信息在存储空间上是领近的,这是因为指令通常是顺序存放,顺序执行的,数据也般以向量,数组,表等形式簇聚的存储在一起的。

      高速缓存技术就是利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的,容量较小的Cache中,使CPU的访问操作大多数针对Cache进行,从而是程序的执行速度大大提高。

二 按存取方式分类

1)随机存储器(RAM):CPU可以对存储器的任何一个存储单元的内存都可以随机存取,而且存取时间与存储单元的位置无关。优点是读写方便,使用灵活,主要用做主存或高速缓冲存储器。RAM又分为静态随机存储器SRAM和动态随机存储器DRAM。

    SRAM属易失性半导体存储器,只要电源被切断,原来的保存信息便会丢失。它的存取速度快,但集成度低,功耗较大,所以一般用来组成高速缓存存储器。

    DRAM也为易失性存储器,具有容易集成,价位低,容量大和功耗低等优点,但是DRAM的存取速度比SRAM慢,一般用来组成大容量主存系统。DRAM电容上的电荷一般只能维持1~2ms,因此即使电源不断电,信息也会自动消失。为此每隔一定时间必须刷新(这里不细讲)。这里注意易失性存储器和刷新的区别,易失性存储器是指断电后数据丢失,SRAM和DRAM都满足断电内容消失,但需要刷新的只有DRAM。

  DRAM和SRAM的区别在于是否需要动态刷新。

2)只读存储器(ROM):存储器的内容只能随机读出而不能写入。信息一旦写入存储器就固定不变了,即使断电,内容也不会消失。

ROM的类型:有MROM,PROM,EPROM,等类型,这里只提下闪速存储器Flash Memory和固态硬盘Solid State Drivers(SSD).

      闪存是在EPROM和E2PROM基础上发展起来的,其主要特点是即可在不加电的情况下长期保存信息,又能在线进行快速擦除和重写。

      固态:固态就是基于闪存的固态硬盘是用固态电子存储芯片阵列而至制成的硬盘。保留了Flash Memory长期保存信息,快速擦除与重写的特点。常见的SSD固态硬盘,即由Flash芯片组成。U盘也是采用Flash Memory技术,属于ROM的一种

   这里只讲这两种分类方式

二  多级存储系统 


实际上,存储系统层次结构主要体现在"Cache--主存"层次和"主存--辅存"层次。前者主要解决CPU和主存速度不匹配问题,后者主要解决存储系统的容量问题。


      在存储体系中,Cache,主存都能与CPU直接交换信息,辅存则要通过主存与CPU交换信息。

       在"主存--辅存"这一层次的不断发展中,逐渐形成了虚拟存储系统。

       虚拟存储器就是一种对主存的抽象概念。虚拟存储器将主存或辅存的地址空间统一编址,形成一个庞大的地址空间,在这个空间内,用户可以自由编程,而不必在乎实际的主存容量和程序在主存中的实际存放位置。

      用户编程允许涉及到的地址称为虚拟地址或者逻辑地址,虚拟地址对应的存储空间称为虚拟空间或程序空间。实际的主存单元地址称为实地址或物理地址,物理地址对应的是主存地址空间。虚拟地址要比物理地址大很多。

   关于虚拟内存和物理内存更详细的信息可以看大佬博客https://blog.csdn.net/patkritlee/article/details/52176765

   







猜你喜欢

转载自blog.csdn.net/zzqzzq123456/article/details/79925450
今日推荐