计算机中存储器详解


一、存储器的分类

1. 按存储介质分类

在这里插入图片描述

2. 按存取方式分类

在这里插入图片描述


二、存储器的层次结构

在讲存储器的层次结构之前,我们可以思考一下:平时我们考虑存储器的话,会考虑哪些方面特性呢?
在这里插入图片描述

  • 读写速度,比如读写速度为5400转、7200转等
  • 存储容量,比如2T、8G等
  • 价格

那么这些因素是怎样影响存储器的层次结构呢?对于存储器,我们肯定希望读写速度越高越好,存储容量越大越好,价格越低越好

在这里插入图片描述

为了量化存储器的性价比,就提出了一个专门的单位:位价,计算公式如下:
在这里插入图片描述

综合位价、读写速度这些因素,将存储器的层次结构划分为三个:缓存主存辅存,如下图所示。
在这里插入图片描述

这里的缓存指的是CPU里面的寄存器以及高速缓存,读写速度最快、位价最高;主存指的是计算机里面的内存,读写速度次于缓存、位价适中;辅存主要是计算机的外部辅助存储设备(比如磁盘、U盘、移动硬盘等),读写速度是最慢的、位价最低。这三者容量大小排序为:缓存<主存<辅存


三、CPU、缓存、主存、辅存之间的通信关系

在计算机中,CPU和高速缓存、主存、辅存之间的通信关系如下图所示:
在这里插入图片描述
从图中可以看出,CPU与高速缓存是直接通信的,同时,CPU也可以直接与主存通信,而高速缓存与主存之间也可以相互直接通信,这样的层次称为:缓存-主存层次;主存与辅存之间的通信,CPU是不参与的,这个层次称为:主存-辅存层次

1. 缓存-主存层次

  • 利用原理:局部性原理
  • 实现方式:在CPU与主存之间增加一层速度快(容量小)的Cache
  • 目的:为了解决主存与CPU速度不匹配的问题(主存速度不足,CPU速度很快)

2. 局部性原理

局部性原理是指CPU访问存储器时,无论是存取指令还是存取数据,所访问的存储单元都趋于聚集在一个较小的连续区域中。如下示意图所示:
在这里插入图片描述

从上图中可以看出,假设程序所经常访问的内存是上图的红色阴影区域,那么按照缓存-主存的层次,我们就可以把这段内存按照一定的策略置换至缓存中即可,CPU再用到这部分内存的时候,就可以直接访问缓存获取,而不需要到速度比较慢的内存中获取。因为有这个局部性原理的存在,所以这个缓存组成的层次才得以生效和高效的运行在计算机中。

3. 主存-辅存层次

  • 利用原理:局部性原理
  • 实现方式:主存之外增加辅助存储器(磁盘、SD卡、U盘等)
  • 目的:解决主存容量不足的问题。假设电脑中有一个20G的游戏,但是电脑只有8G的内存,那么这个游戏是怎么运行起来的呢?因为有局部性原理,可以把当前游戏中使用的数据加载到主存中,而对一些不实用的数据放到辅存中去。这就是使用了主存-辅存层次来解决主存容量不足的问题。

猜你喜欢

转载自blog.csdn.net/2201_75641637/article/details/130747236
今日推荐