项 目 |
Cache—主存层次 |
主存—辅存层次 |
目的 |
为了弥补主存速度的不足 |
(为了弥补主存容量不足) |
存储管理实现 |
(主要由硬件实现) |
主要由软件实现 |
CPU对第二级的访问方式 |
可直接访问 |
(通过主存访问) |
失效时CPU是否切换 |
(不切换) |
(不切换) |
1.计算机体系结构:计算机体系结构包括指令集结构、计算机组成和计算机实现三个方面的内容。
2.透明性:在计算机技术中,对这种本来是存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性(transparency)。
3.程序访问的局部性原理:程序总是倾向于访问最近刚访问过的信息,或和当前所访问的信息相近的信息,程序对信息的这一访问特性就称之为程序访问的局部性原理。
4.RISC:精简指令集计算机。
5.CPI——指令时钟数(Cycles per Instruction)。
6.Amdahl定律——加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中的所占的重要性。
7.系列机:在一个厂家内生产的具有相同的指令集结构,但具有不同组成和实现的一系列不同型号的机器。
8.软件兼容:同一个软件可以不加修改地运行于体系结构相同的各档机器,而且它们所获得的结果一样,差别只在于有不同的运行时间。
9.基准程序:选择一组各个方面有代表性的测试程序,组成的一个通用测试程序集合,用以测试计算机系统的性能。
10.合成测试程序:首先对大量的应用程序中的操作进行统计,得到各种操作的比例,再按照这个比例人为制造出的测试程序。
11.Benchmarks:测试程序包,选择一组各个方面有代表性的测试程序,组成的一个通用测试程序集合。
12.核心程序:从真实程序提取出来的用于评价计算机性能的小的关键部分。
13.通用寄存器型机器:指令集结构中存储操作数的存储单元为通用寄存器的机器,称之为通用寄存器型机器。
14.Load/Store型指令集结构:在指令集结构中,除了Load/Store指令访问存储器之外,其它所有指令的操作均是在寄存器之间进行,这种指令集结构称之为Load/Store型指令集结构。
15.虚拟机器:(virtual machine),由软件实现的机器。
16.操作系统虚拟机:直接管理传统机器中软硬件资源的机器抽象,提供了传统机器所没有的某些基本操作和数据结构,如文件系统、虚拟存储系统、多道程序系统和多线程管理等。
17.并行性:是指在同一时刻或是同一时间间隔内完成两种或两种以上性质相同或不相同的工作。只要时间上互相重迭,就存在并行性。
18.时间局部性:程序即将用到的信息很可能就是目前正在使用的信息。
19.程序的空间局部性:程序即将用到的信息很可能与目前正在使用的信息在空间上相邻或者临近。
20.操作
数表示:机器硬件能够直接识别处理的数据结构。
21.指令周期:执行一条机器指令所用的时间,包括取指令、分析指令和执行指令的时间。
22.寻址技术:确定操作数地址的技术。
23.流水线:将一个重复的时序过程,分解为若干个子过程,而每一个子过程都可有效地在其专用功能段上与其他子过程同时执行。
24.单功能流水线:只能完成一种固定功能的流水线。
25.多功能流水线:流水线的各段可以进行不同的连接,从而使流水线在不同的时间,或者在同一时间完成不同的功能。
26.静态流水线:同一时间内,流水线的各段只能按同一种功能的连接方式工作。
27.动态流水线:同一时间内,当某些段正在实现某种运算时,另一些段却在实现另一种运算。
28.部件级流水线:(运算操作流水线)把处理机的算术逻辑部件分段,以便各种数据类型进行流水操作。
29.处理机型流水线:(指令流水线)把解释指令的过程按照流水方式处理。
30.处理机间流水线:(宏流水线)由两个以上的处理机串行地对同一数据流进行处理,每一个处理机完成一项任务。
31.线性流水线:指流水线的各段串行连接,没有反馈回路。
32.非线性流水线:指流水线中除有串行连接的通路外,还有反馈回路。
33.标量流水处理机:处理机不具有向量数据表示,仅对标量数据进行流水处理。
34.流水线效率:流水线的设备利用率。
35.流水线寄存器文件:分割流水线各段逻辑的寄存器组。
36.指令发射:指令从流水线的译码段进入执行段的过程。
37.流水线定向技术:流水线中将计算结果从其产生的地方直接送到真正需要它的地方,而不是从寄存器文件读出使用,它是一种解决数据相关,避免流水线暂停的技术。
38.向量处理机:处理机具有向量数据表示,并通过向量指令对向量的各元素进行处理。
39.结构相关:某些指令组合在流水线中重叠执行时,产生资源冲突,则称该流水线有结构相关。
40.数据相关:当指令在流水线中重叠执行时,流水线有可能改变指令读/写操作的顺序,使得读/写操作顺序不同于它们非流水实现时的顺序,将导致数据相关。
41.写后写相关——两条指令i,j,i在j前进入流水线,j、i的操作数一样,在流水线中重叠执行时,j可能在i写入其结果之前就先行对保存该结果的寄存器进行写操作,导致写错误。
42.RAW相关:也
即写后读相关(RAW:read after write ),j的执行要用到i的计算结果,但是当其在流水线中重叠执行时,j可能在i写入其计算结果之前就先行对保存该结果的寄存器进行读操作,所以j会读到错误的值。这是最常见的一种数据相关。
43.WAR相关:也即读后写相关(WAR:write after read)两条指令i,j,i在j前进入流水线,j可能在i读某个寄存器之前对该寄存器进行写操作,导致i读出数据错误。
44.定向:将计算结果从其产生的地方直接送到其它指令需要它的地方,或所有需要它的功能单元,避免暂停。
45.向量流水处理机:具有向量数据表示、向量指令的流水线处理机叫向量流水处理机。
46.向量的链接:允许一个向量操作一旦它的向量源操作数的单个元素可用时就开始。
47.存储层次——采用不同的技术实现的存储器,处在离CPU不同距离的层次上,目标是达到离CPU最近的存储器的速度,最远的存储器的容量。
48.全相联映射策略:主存中的任意一块均可被放置到Cache中任意一个位置的方法。
49.组相联Cache映象:某一内存块只能放入Cache的某一固定组中,同时该块可以放入这一组中的任意一块。
50.Cache替换算法——当Cache块失效将主存块装入Cache又出现Cache块冲突时,需要按照某种策略把Cache中的一块替换出去,这种策略就称为替换算法。
51.Cache并行查找算法:在组相联或全相联cache中并行访问和比较多个tag,并行访问数据体的查找模式。
52.Cache串行查找算法:cache中串行依次行访问和比较多个tag,串行行访问数据体的查找模式。
53.写直达法:执行“写”操作时,不仅写入Cache,而且也写入下一级存储器。
54.写回法:执行“写”操作时,只写入Cache。仅当Cache中相应的块被替换时,才写回主存。
55.按写分配:写失效时,先把所写单元所在的块调入Cache,再行写入。
56.不按写分配:写失效时,直接写入下一级存储器而不调块。
57.写合并:当把数据写入写缓冲器时,判断本次所写入单元的块地址是否与写缓冲器中某个有效块的地址相同,若是,则把新数据与该块合并。
58.Victim Cache——位于Cache和存储器之间的又一级Cache,容量小,采用全相联策略。用于存放由于失效而被丢弃(替换)的那些块。每当失效发生时,在访问下一级存储器之前,先检查Victim Cache中是否含有所需块。
59.按写分配法:当Cache失效时,先将要写的单元的相应的块调入Cache,然后再进行写操作。
60.Cache的强制性失效:当地一次访问一个块时,该块不在Cache中,需要从下一级存储器中调入Cache,这就是强制性失效。
61.TLB——转换查找缓冲器,用其可以将地址转换结果保存,这样就可以减少主存读写操作中的地址转换工作。
62.USB总线——通用串行总线。应用在PC领域的新型接口技术,USB 将取代当前PC上的串口和并口,目的是提供设备的热插拔和即插即用的能力。
63.消息通过时间:消息的通过时间是指消息的第一位从发送端到接收端所需要的时间。
64.磁盘寻道时间:磁盘的寻道时间是指将磁头从某一位置移动到所要访问的信息所在的磁道所需要的时间。
65.同步总线:有统一的时钟协调各个设备操作的总线。
66.故障性预取:是指在预取时,如果出现虚地址故障或违反保护权限,就会发生异常。
67.多处理机系统:由多个不同类型,至少担负不同功能的处理机组成,按照作业要求的顺序,利用时间重叠原理,依次对它们的多个任务进行处理,各自完成规定的功能动作。
68.并行处理机:重复设置多个同样的处理单元(PE),按照一定的方式相互连接,在同一的控制部件(CU)作用下,各自对分配来的数据并行地完成同一条指令所规定的操作。
69.分布式共享多处理机——采用非集中式,存储器分布到各个处理器上的多处理机。
70.同构型多处理机——由多个同种类型、至少同等功能的处理机组成、同时处理同一作业中能并行执行的多个任务的机器。
71.异构型多处理机:由多个不同类型,至少担负不同功能的处理机组成,按照作业要求顺序,利用时间重叠原理,依次对它们的多个任务加工,各自完成规定的功能动作。
72.结点度:互联网络终于结点相连结的边的数目。
73.互连网络的直径:互连网络中任意两个结点之间最短路径长度的最大值。
74.流水线吞吐率:是指单位时间内流水线所完成的任务数或输出结果的数量。
75.流水线最大吞吐率:是指流水线在达到稳定状态后所得到的吞吐率。
76.流水线实际吞吐率:是指m段流水线完成n个任务所达到的吞吐率。
77.流水线加速比:是指流水线速度与等功能的非流水线速度之比。
78.流水线暂停:流水线控制某条指令及其后面所有指令的执行,使该指令之前的所有指令继续执行的技术。
79.强制性失效:当第一次访问一个块时,该块不在Cache中,需从下一级存储器中调入Cache,这就是强
制性失效,也称冷启动失效或首次访问失效。
80.容量失效:如果程序执行时所需的块不能全部调入Cache中,则当某些块被替换后,若又重新被访问,就会发生失效。这种失效称为容量失效。
81.冲突失效:在组相联或直接映象Cache中,若太多的块映象到同一组(块)中,则会出现该组中某个块被别的块替换(即使别的组或块有空闲位置),然后又被重新访问的情况。这就是发生了冲突失效。(碰撞失效,干扰失效)
82.非阻塞Cache:Cache失效时仍允许CPU进行其它的命中访问。即允许“失效下命中”
83.虚拟Cache:访问Cache的索引以及Cache中的标识都是虚拟地址的一部分。
84.RAID:廉价磁盘冗余阵列,简称盘阵列技术。
85.RAID 1: 镜像盘,使用双备份磁盘。
86.RAID 2: 位交叉式海明编码阵列。
87.RAID 3: 位交叉奇偶校验盘阵列。
88.RAID 4: 专用奇偶校验独立存取盘阵列。
89.RAID 5: 块交叉分布式奇偶校验盘阵列。
90.RAID 6: 双维奇偶校验独立存取盘阵列。
91.同步总线;同步总线上所有设备通过统一的总线系统时钟进行同步。
92.异步总线:设备之间没有统一的系统时钟,设备自己内部定时。设备之间的信息传送用总线发送器和接收器控制。但在传输时,异步总线需要额外的同步开销。
93.I/O总线标准:定义设备连接规则的文件。
94.并行计算:指同时对多个任务或多条指令、或对多个数据项进行处理。
95.并行计算机系统:是将多个处理器通过网络以一定的连接方式有序地组织起来,能够完成并行计算的计算机系统。
96.同步消息传递:请求处理器发送一个请求后一直要等到应答结果才继续运行。
97.异步消息传递:发送方不先经请求就直接把数据送往数据接收方。
98.集中式共享存储器体系结构:多个处理器共享一个存储器的多处理系统结构。
99.Cache一致性协议:对多个处理器维护一致性的协议。
100.分布式共享存储器体系结构:存储器分布于各结点中,所有的结点通过网络互连。访问可以是本地的,也可是远程的。
答:
答:
答:线延迟、功耗。
答:固定长度编码、可变长编和混合编码)三种设计方法。
答:
(1)机器以运算器为中心。
(2)采用存储程序原理。
(3)存储器是按地址访问的、线性编址的空间。
(4)控制流由指令流产生。
(5)指令由操作码和地址码组成。
(6)数据以二进制编码表示,采用二进制运算。
答:
在进行计算机系统设计时,设计者应该考虑到如下三个方面因素的影响:
答:
翻译技术是先把N+1级程序全部变换成N级程序后,再去执行新产生的N级程序,在执行过程中N+1级程序不再被访问。
答:
解释技术是每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下一条N+1级的指令,依此重复进行。
计算机体系结构是机器级程序员所看到的计算机的属性,即概念性结构与功能特性。
随着集成电路工艺的进步,芯片内晶体管大小不断变小,其逻辑门延迟也随之减小,而走线延迟所占的比重也随之越来越大,导致电路频率不能随着工艺的减小而线性减小。
微处理器晶体管数目每18个月翻一倍。它揭示了集成电路工艺发展的规律。
响应时间也称执行时间,是指从事件开始到结束之间的时间。
吞吐率(Throughput)指在单位时间内所能完成的工作量(任务)。
用户以响应时间为标准,多道程序系统以吞吐率为标准。
程序在执行时所访问地址的分布不是随机的,而是相对地簇聚;这种簇聚包括指令和数据两部分。程序局部性包括:
程序的时间局部性:程序即将用到的信息很可能就是目前正在使用的信息。
程序在执行时所访问地址的分布不是随机的,而是相对地簇聚;这种簇聚包括指令和数据两部分。程序局部性包括:
程序的空间局部性:程序即将用到的信息很可能与目前正在使用的信息在空间上相邻或者临近。
答:
在进行指令机结构设计中,应该考虑如下主要问题:
答:
具有测试、分析、判断能力,控制程序的运行顺序和方向。
答:
有转移指令、循环控制、子程序、过程调用等。
答:
在寻址方式设计时,首先对一些典型的基准程序进行分析,统计基准程序中使用各种寻址方式的频率,然后根据所要设计的计算机系统所面向的应用领域,确定选择哪些使用频率高的寻址方式予以支持。对于一些特殊的寻址方式(如偏移寻址等),偏移量的确定也必须应用同样的方法加以确定。
答:
表示寻址方式有两种常用的方法:一种是将寻址方式编于操作码中,由操作码在描述指令的同时也描述了相应的寻址方式;另一种是为每个操作数设置一个地址描述苻,由该地址描述抚表示相应操作数的寻址方式。
答:
将寻址方式编于操作码中的方式译码快,但操作码和寻址方式的结合不仅增加了指令的条数,导致了指令的多样性,而且增加了CPU对指令译码的难度。为每个操作数设置一个地址描述苻的方式译码较慢,但操作码和寻址独立,易于指令扩展。
答:
答: 取指、译码、执行、访存、写回五个操作功能段。
答:
答:
在DLX中,由于ALU和数据存储器都要接受操作数,设置从寄存器文件EX/MEM和MEM/WB到这两个单元输入的定向路径,还有DLX的零监测单元在EX周期完成分支条件检测操作,也设置到该单元的定向路径,减少了数据相关带来的暂停;但并不是所有数据相关带来的暂停都可通过定向技术来消除,采用暂停技术,设置一个“流水线互锁”的功能部件,一旦流水线互锁检测到数据相关,流水线暂停执行发生数据相关指令后续的所有指令,直到该数据相关解决为止。利用编译器技术,重新组织代码顺序也可消除数据相关带来的必然暂停。
答:
答:容量小、结构简单的Cache;将写操作流水化以加快写命中
答:
答:
5、在单机系统中保持Cache一致性的措施有哪些?
答:
采用写穿透策略和写回策略可以在单机系统中保持Cache一致性。
答:
全相联映象的特点:利用率最高,冲突概率最低,实现最复杂。
直接映象的特点:利用率最低,冲突概率最高,实现最简单。
答:“Cache-主存”层次和“主存-辅存”层次的区别见下表
比较项目 |
“Cache-主存”层次 |
“主存-辅存”层次 |
目的 |
为了弥补主存速度上的不足 |
为了弥补主存容量的不足 |
存储管理实现 |
主要由专用硬件实现 |
主要由软件实现 |
访问速度的比值 (第一级比第二级) |
几比一 |
几万比一 |
典型的块(页)大小 |
几十个字节 |
几百到几千个字节 |
CPU对第二级的访问方式 |
可直接访问 |
均通过第一级 |
失效时CPU是否切换 |
不切换 |
切换到其它进程 |
答:
首先以CPU给出的地址中的高30位为虚拟也好,将其和TLB中的32个页表项的Tag相比较,同时检查访问的合法性(由TLB中页表项的高5位确定)。如果某一页表项的Tag预虚拟也好相同,且访问合法,那么由32:1多路选择器读出该页表项的低21位,这21位就是所访问页的真实物理地址的高21位,最后将其和页偏移量合并成34位物理地址。
答:
主要完成如下三项工作:
答:
首先某一设备发出读请求,并将地址1提交给总线之后,不再占用总线,这时其它总线主设备也可发出读请求,并将地址信号提交给总线(地址2、地址3)。总线根据所接受的地址进行存储器访问,读出数据,将数据信息放在地址总线上。第一个总线主设备法出第之后,不断“侦听”总线,如果总线上不是其所请求读出的数据,那么该总线主设备必须等待(等待1),只有当总线上出现了该总线主设备所请求读出的数据后(数据1),那么该总线主设备取回数据,完成总线访问(完成1)。由此可以看出,在有多个主设备时,总线就可以通过数据打包来提高总线带宽,这样可以不必在整个传输过程中都占有总线,这种技术叫做“分离处理(split transaction)”或者“流水处理”或者“包开关总线”等。值得注意的是:读操作分为两部分,一个是包含地址的读请求和一个包含数据的存储器应答,每个操作必须标记清楚,以便CPU和存储器可以识别它们。当从所请求存储器地址处读一个字的时候,分离处理允许其它总线主设备使用总线,因此,CPU必须能够识别总线上发来的数据,存储器必须识别总线上返回的数据。分离处理总线有较高的带宽,但是它的数据传送延迟比独占总线方法要大。
答:
答:
第一个问题可以用写直达Cache解决。
第二个问题操作系统可以保证I/O操作的数据不在cache中。如果不能,就作废Cache中相应的数据。
答:
优点是既能够得到虚拟Cache的好处,又能够得到物理Cache的优点。
缺点是直接映象Cache的容量不能够超过页的大小。
答:
ALU输入端的两个MUX由ID/EX.IR所指出的指令类型控制,IF段的MUX由EX/MEM.Cond域的值控制,WB段的MUX由当前指令类型(Load/ALU)控制。
答:
把指令存储器和数据存储器分开,使每个存储器具有独立的读写端口。
答:
可能存在RAW冲突,通过使寄存器文件支持“前半周期写后半周期读”来避免。
答:
效率指流水线的设备利用率。由于流水线有通过时间和排空时间,所以流水线的各段并非一直满负荷工作,所以效率是小于1的数。
答:
三个指标是衡量流水线性能的三种度量,
效率E = n△t/T流水=mn△t/(T流水m)= S/m, 效率是实际加速比S与最大加速比m之比。
效率E = n△t/T流水= (n/T流水) ·△t=TP△t,当△t不变时,流水线的效率与吞吐率呈正比。
答:
定向技术是指流水线中将计算结果从其产生的地方直接送到真正需要它的地方,而不是从寄存器文件读出使用,它是一种解决数据相关,避免流水线暂停的方法。
答:
两条指令 i 和 j,都会访问同一寄存器R,假设指令i在指令j 之前,指令i先写寄存器R而指令j后读寄存器R,称两条指令存在写后读相关。流水线中如果j 在i 完成写之前从R 中读出数据,将得到错误的结果。DLX中由于在ID段读寄存器而在WB段写寄存器,所以写后读相关可能引起执行错误或流水线暂停。
答:
两条指令 i 和 j,都会访问同一寄存器R,假设指令i在指令j 之前,指令i先写寄存器R而指令j后写寄存器R,称两条指令存在写后写相关。如果j 在i 之前完成写操作,R中将保存错误的结果。DLX中由于只在WB段这唯一的一段写寄存器,所以前后指令的写后写相关不会发生执行错误。
答:
两条指令 i 和 j,都会访问同一寄存器R,假设指令i在指令j 之前,指令i先读寄存器R而指令j后写寄存器R,称两条指令存在读后写相关。流水线中如果j 在i 完成读之前向R 中写入数据,将写入错误的结果。DLX中由于在ID段读寄存器而在WB段写寄存器,ID段在WB段之前,所以前后指令的读后写相关不会发生执行错误。
答:
答:
(1) 冻结或排空流水线:在流水线中停住或删除分支后的指令,直到知道转移目标地址
(2) 预测分支转移失败:流水线继续照常流动,如果分支转移成功,将分支指令后的指令转换为空操作,并从分支目标处开始取指令执行;否则照常执行
(3) 预测分支转移成功:始终假设分支成功,直接从分支目标处取指令执行
(4) 延迟分支(delayed branch):分支开销为n的分支指令后紧跟有n个延迟槽,流水线遇到分支指令时,按正常方式处理,顺带执行延迟槽中的指令,从而减少分支开销。
答:
要求被调度的指令必须与分支结果无关,任何情况都能起作用。
答:
要求被调度的指令必须保证在分支失败时执行被调度的指令不会导致错误,可能需要复制指令。该方法在分支成功时起作用。
答:
要求被调度的指令必须保证在分支成功时执行被调度的指令不会导致错误。该方法在分支失败时起作用。
答:
一个向量功能部件得到的结果直接送入另一个向量功能部件的操作数寄存器时所发生的连接过程称为链接。当两条指令出现“写后读”相关时,若它们不存在功能部件冲突和向量寄存器(源或目的) 冲突,就有可能把它们所用的功能部件头尾相接,形成一个链接流水线,进行流水处理。 链接特性实质上是把流水线“定向”的思想引入到向量执行过程的结果。
答:
容量越大价格越低,速度越快价格越高,容量越大速度越慢。
答:
TA=TA1+(1-H )TM 或 TA=TA1+FTM,H为命中率,F为失效率,TA1为高一级存储层次的访问时间,TM为失效开销。
答:
映象规则:当把一个块调入高一层(靠近CPU)存储器时,可以放在哪些位置上?
查找算法:当所要访问的块在高一层存储器中时,如何找到该块?
替换算法:当发生失效时,应替换哪一块?
写策略:当进行写访问时,应进行哪些操作?
答:
并行查找速度快,但硬件代价大,顺序查找速度慢,通常采用MRU策略提高速度,硬件代价相对小。
答:
方法一:利用相联存储器,速度较快,逻辑控制简单,但需特殊器件支持。
方法二:利用单体多字存储器+比较器,速度相对较慢,可利用一般SRAM等实现。
答:
随机法:实现简单
FIFO法:实现较为简单,失效率与程序访问特性有关。
LRU法:失效率低。
答:
写直达法:执行“写”操作时,不仅写入Cache,而且也写入下一级存储器。
写回法:执行“写”操作时,只写入Cache。仅当Cache中相应的块被替换时,才写回主存。需设置“污染位”来记录数据块是否被更新。
写回法速度快,所使用的存储器频带较低;写直达法易于实现,一致性好。
按写分配(写时取):写失效时,先把所写单元所在的块调入Cache,再行写入。
不按写分配(绕写法):写失效时,直接写入下一级存储器而不调块。
当把数据写入写缓冲器时,判断本次所写入单元的块地址是否与写缓冲器中某个有效块的地址相同,若是,则把新数据与该块合并。这样可提高写缓冲的利用率。
答:
在Cache和它从下一级存储器调数据的通路之间设置一个全相联的小Cache,用于存放被替换出去的块,以备重用。这些被保存的替换块被称为Victim块,存放这些块的缓冲称为Victim cache。Victim cache对于减小冲突失效很有效,特别是对于小容量的直接映象数据Cache,作用尤其明显。
答:
在逻辑上把直接映象Cache的空间上下平分为两个区。对于任何一次访问,伪相联Cache先按直接映象Cache的方式去处理。若命中,则其访问过程与直接映象Cache的情况一样。若不命中,则再到另一区相应的位置去查找。若找到,则发生了伪命中,否则就只好访问下一级存储器。
答:
在编译时,对程序中的指令和数据进行重新组织,是连续访问的指令或数据能够具有根号的时间和空间局部性,以降低Cache失效率。
答:
推迟对读失效的处理;检查写缓冲器中的内容。
答:
编译器把对数组的整行或整列访问改为按块进行,使得块内的访问具有较好的局部性,从而降低失效率。
答:
把Cache块进一步划分为更小的块(子块),并给每个子块赋予一位有效位,用于指明该子块中的数据是否有效。Cache与下一级存储器之间以子块为单位传送数据。但标识仍以块为单位。
答:
局部失效率=该级Cache的失效次数/到达该级Cache的访问次数,
全局失效率=该级Cache的失效次数/CPU发出的访存的总次数。
答:
在地址标识中增加PID字段(进程标识符)
答:
优点:兼得虚拟Cache和物理Cache的好处。
局限性:Cache容量受到限制 (页内位移),Cache容量≤页大小×相联度。
答:
减少主存延迟,提高主存带宽。
答:
增加存储器的宽度;采用简单的多体交叉存储器;采用独立存储体;避免存储体冲突。
答:
多个进程可以共享主存空间;程序员不必做存储管理工作;采用动态再定位,简化了程序的装入。
答:
TLB是一个专用的高速缓冲器,用于存放近期经常使用的页表项。
答:
大页面的优点:
页表的大小与页面大小成反比。较大的页面可以节省实现地址映象所需的存储空间及其它资源;较大的页面可以使快速Cache命中的实现更简单;在主存和辅存之间传送较大页面比传送较小的页面更有效。TLB的项数有限,对于给定数目的项数,较大的页面意味着可以高效地实现更多存储空间的地址变换,从而减小TLB失效的次数。
小页面的优点:可以减少空间的浪费。
答:
优点:系统可靠性好;设计简单。缺点:硬件开销大;效率低。
答:
块交叉分布式奇偶校验盘阵列,即数据以块交叉的方式存于各盘,但无专用的校验盘,而是把冗余的奇偶校验信息均匀地分布在所有磁盘上。由于对数据块每一行的相联奇偶校验不再限制在单一磁盘上,只要块单元不位于同一个磁盘内,这种组织方法就可以支持多个写同时执行。这种策略读数据速率高;盘阵列利用率高,但设计复杂。
答:
CPU-存储器总线: CPU-存储器总线则比较短,通常具有较高的速度,并且要和存储器系统的速度匹配来优化带宽。
I/O总线:由于要连接许多不同类型、不同带宽的设备,因此I/O总线比较长,并且还应遵循总线标准。
答:
程序控制、中断、DMA、I/O处理机。
答:
字节多路通道:简单的共享通道,为多台低速或中速的外围设备服务。采用分时方式工作。
选择通道:为高速外围设备(如磁盘存储器等)服务。在传送数据期间,只能为一台高速外围设备服务,在不同的时间内可以选择不同的设备。
数组多路通道:为高速设备服务。各台高速设备重迭操作。
答:
同步总线所有的设备都有统一的时钟。同步总线的成本低,因为它不需要设备之间互相确定时序的逻辑。缺点是总线操作的速度受时钟的影响。由于设备都需要精确的以公共时钟为定时参考,因此频率一旦高,容易出现时钟漂移错误。
异步总线没有统一的时钟,设备内部自己定时。设备之间的信息传送由总线发送器和接收器控制。异步总线适用更加广泛,扩充时不用担心时钟时序和时钟同步的问题。但传输时异步总线要增加额外的同步开销。
答:
1)存储器中可能不是CPU产生的最新数据,所以I/O系统从存储器中取得是旧数据;
2)I/O系统与存储器交换数据之后,在Cache中,被CPU使用的可能会是旧数据。
答:
1)利用写直达方法。但如果是写回法,必须进行地址检查,确保I/O使用的数据不在Cache中;
2)Cache中的数据在I/O操作之后能够及时更新,保证I/O操作的数据不在Cache中,如果在需要作废Cache中的相应数据。
答:
(1)计算密集型
(2)数据密集型
(3)网络密集型
答:
把计算机分成单指令流单数据流(SISD)、 单指令流多数据流(SIMD)、 多指令流单数据流(MISD)、 多指令流多数据流(MIMD)四种处理模式机器。
答:
按照存储器结构和互连策略的不同分为集中式共享存储器结构和分布式存储器结构。
答:
优点:(1) 如果大多数的访问是针对本结点的局部存储器,则可降低对存储器和互连网络的带宽要求;(2) 对局部存储器的访问延迟低。
缺点:处理器之间的通信较为复杂,且各处理器之间访问延迟较大。
答:
(1) 物理上分离的多个存储器可作为一个逻辑上共享的存储空间进行编址。这类机器的结构被称为分布式共享存储器(DSM)或可缩放共享存储器体系结构。DSM机器被称为NUMA(non-uniform memory access)机器。
(2) 整个地址空间由多个独立的地址空间构成,它们在逻辑上也是独立的,远程的处理器不能对其直接寻址。
答:
共享地址空间的机器利用Load和Store指令中的地址隐含地进行数据通信。
多个地址空间的机器通过处理器间显式地传递消息完成 (消息传递机器),消息传递机器根据简单的网络协议,通过传递消息来请求某些服务或传输数据,从而完成通信。
答:
通信带宽、通信延迟、通讯延迟隐藏机制的效率。
答:
(1) 与常用的集中式多处理机使用的通信机制兼容。
(2) 当处理器通信方式复杂或程序执行动态变化时易于编程,同时在简化编译器设计方面也占有优势。
(3) 当通信数据较小时,通信开销较低,带宽利用较好。
(4) 通过硬件控制的Cache减少了远程通信的频度,减少了通信延迟以及对共享数据的访问冲突。
答:
(1) 硬件较简单。
(2) 通信是显式的,从而引起编程者和编译程序的注意,着重处理开销大的通信。
答:
I/O操作:Cache中的内容可能与由I/O子系统输入输出形成的存储器对应部分的内容不同。
共享数据:不同处理器的Cache都保存有对应存储器单元的内容。
答:
如果对某个数据项的任何读操作均可得到其最新写入的值,则认为这个存储系统是一致的。
答:
共享数据的迁移:降低了对远程共享数据的访问延迟。
共享数据的复制:不仅降低了访存的延迟,也减少了访问共享数据所产生的冲突。
答:
目录:物理存储器中共享数据块的状态及相关信息均被保存在一个称为目录的地方。
监听:每个Cache除了包含物理存储器中块的数据拷贝之外,也保存着各个块的共享状态信息。
答:
写作废协议:在一个处理器写某个数据项之前保证它对该数据项有唯一的访问权。
写更新协议:当一个处理器写某数据项时,通过广播使其它Cache中所有对应的该数据项拷贝进行更新。
答:
1)对同一数据的多个写而中间无读操作的情况,写更新协议需进行多次写广播操作,而在写作废协议下只需一次作废操作。
2)对同一块中多个字进行写,写更新协议对每个字的写均要进行一次广播,而在写作废协议下仅在对本块第一次写时进行作废操作。
3)从一个处理器写到另一个处理器读之间的延迟通常在写更新模式中较低。而在写作废协议中,需要读一个新的拷贝。
答:
一种专用的存储器所记录的数据结构,它记录着可以进入Cache的每个数据块的访问状态、该块在各个处理器的共享状态以及是否修改过等信息。