软考|计组|6.层次化存储结构

层次化存储结构

是在计算机体系结构下存储系统层次结构的排列顺序。

每一层于下一层相比都拥有较高的速度和较低延迟性,以及较小的容量。

由于高速缓存的效率和存储器传输位于层次结构中的不同档次,所以实际上会限制处理的速度,导致中央处理器花费大量的时间等待存储器I/O完成工作。

分类

计算机层次结构

补充:主存分为随机存储器(RAM)和只读存储器(ROM)

 

存储器分类

  1. 按存储介质可以分类为半导体存储器、磁表面存储器、光存储器。

  2. 按存储器的读写功能可以分类为只读存储器(ROM)、 随机读写存储器(RAM)。

  3. 按信息的可保存性可以分类为非永久记忆的存储器、永久记忆性存储器。

  4. 按在计算机系统中的作用可以分类为主存储器(内存)、辅助存储器(外存储器)、缓冲存储器。

  5. 按功能/容量/速度/所在位置可以分类为寄存器、高速缓存、内存储器、外存储器。

  6. 工作性质/存取方式可以分类为随机存取存储器、顺序存取存储器、直接存取存储器、相联存储器。

重点:相联存储器是按内容访问

 

Cache

在计算机存储系统体系中,Cache是访问速度最快的层次(若有寄存器,则寄存器最快)

使用Cache改善系统性能的依据是程序的局部性原理(见后文)

命中率的计算

$$
\begin{aligned} & \begin{cases} h:访问命中率\\ t_1:Cache周期时间\\ t_2:主存周期时间 \\ t_3:使用Cache+主存的系统平均周期 \\ h:命中率 \end{cases} \\ \\ &t_3=h*t_1+(1-h)*t_2 \\ &其中(1-h)又被称为失效率(未命中率) \end{aligned}
$$

 

命中:要访问的数据恰好在Cache中

原理:如果Cache未命中,使用主存

局部性原理

即Cache 的使用场景

局部化原理是层次化存储结构的支撑

可以有效防止抖动

抖动

进程执行过程中发生缺页(missing page)有两种可能:

  1. 并发进程要求的工作集总和大于内存可提供的可用区。因为缺乏足够空间装入需要的程序和数据,系统无法正常工作。

  2. 分配了足够的工作集,但系统无法在开始执行前选择适当的程序段和数据进入内存。这种情况只能依靠执行过程中CPU发现要访问的指令或数据不在内存时,由硬件中断转入中断处理程序,将需要的程序段和数据调入。

当分配的内存小于要求的工作集时,由于内存外存交换频繁访问外存时间和I/O处理时间大大增加,造成CPU因等待数据空转,使得整个系统性能大大下降,这就造成了系统抖动

时间局部性

如果一个信息项正在被访问,那么在近期它很可能还会被再次访问

产生时间局部性的典型原因,是程序中存在着大量的循环操作

空间局部性

旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问

即程序在一段时间内所访问的地址,可能集中在一定的范围之内,这是因为指令通常是顺序存放、顺序执行的,数据也一般是以向量、数组、表等形式簇聚存储的

顺序局部性

在典型程序中,除转移类指令外,大部分指令是顺序进行的

指令的顺序执行、数组的连续存放等是产生顺序局部性的原因

例题:

CPU访问存储器时,被访问数据一般聚集在一个较小的连续存储区域中。
若一个存储单元已被访问,则其邻近的存储单元有可能还要被访问,该特性被称为( )


A.数据局部性
B.指令局部性
C.空间局部性
D.时间局部性

程序的局限性表现在时间局部性和空间局部性

Cache-映像

分为直接相联映像、全相联映像、组相联映像

地址映像原理

将主存与Cache的存储空间划分为若干大小相同的页(或块)

例如,某机主存容量为1GB,划分为2048页,每页512KB;

Cache容量为8MB,划分为16页,每页512KB.

直接相联映像

硬件电路简单冲突率高

直接相联映像

一一对应

比如主存每一区0页只能存Cache0页中

但是每次存新页的时候会挤掉原先旧页,所以冲突率很高

全相联映像

电路难于设计和实现,只适用小容量Cache,冲突率较低

全相联映像

每一页都可以放到Cache任一页,查询复杂

组相联映像

直接相联于全相联的折中

组相联映像

先分区后分组,每个组进行直接相联映像,组内全相联映像

利用了两种优势,但是过于复杂

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇