同济大学继续教育学院的复习题,计算机系统结构第三章(习题解答)
1. 什么是存储系统?对于一个由两个存储器M1和M2构成的存储系统,假设
M1的命中率为h,两个存储器的存储容量分别为s1和s2,存取时间分别为t1和t2,每千字节的成本分别为c1和c2。
⑴ 在什么条件下,整个存储系统的每千字节平均成本会接近于c2? ⑵ 该存储系统的等效存取时间ta是多少?
⑶ 假设两层存储器的速度比r=t2/t1,并令e=t1/ta为存储系统的访问效率。试以
r和命中率h来表示访问效率e。
⑷ 如果r=100,为使访问效率e>0.95,要求命中率h是多少?
⑸ 对于⑷中的命中率实际上很难达到,假设实际的命中率只能达到0.96。现在
采用一种缓冲技术来解决这个问题。当访问M1不命中时,把包括被访问数据在内的一个数据块都从M2取到M1中,并假设被取到M1中的每个数据平均可以被重复访问5次。请设计缓冲深度(即每次从M2取到M1中的数据块的大小)。 答:
⑴ 整个存储系统的每千字节平均成本为:
c
c1 s1 c2 s2
s1 s2
c1
s1 c2 s1 1s2
不难看出:当s1/s2非常小的时候,上式的值约等于c2。即:s2>>s1时,整个存
储器系统的每千字节平均成本会接近于c2。
⑵ 存储系统的等效存取时间ta为:
ta h t1 (1 h) t2
⑶
e
t1t11
tah t1 (1 h) t2h (1 h) r
⑷ 将数值代入上式可以算得:h>99.95% ⑸
通过缓冲的方法,我们需要将命中率从0.96提高到0.9995。假设对存储器的访问次数为5,缓冲块的大小为m。那么,不命中率减小到原来的1/5m,列出