第三章 存储系统

一、多选题

1、在计算机系统中设置虚拟存储器和Cache的主要目的各是什么?试列举出这两种存储系统在具体实现时至少4个方面的差别。
写直达策略直接将数据写入主存储器。写回策略产生延迟直到把块替换为止,才将数据写入主存储器。
可写的共享数据不存放在高速缓存中,这称为共享数据是不可存放在高速缓存中,只有指令和私有数据可以存放在本地高速缓存中。
私用高速缓存为处理机所独有。共享高速缓存为各处理机所共享,有利于彻底解决高速缓存的一致性。
多个进程可能会使用同一个虚拟地址范围,如果两个或多个进程访问高速缓存同一个物理单元时,那么这种别名问题可能会造成混乱,解决别名问题的一种办法是每当发生别名使用时,将整个高速缓存冲洗一遍。
高速缓存的命中率将以不同的方式受到高速缓存容量与块大小的影响。在组联想高速缓存中,组数的影响也是明显的。

二、简答题


1、由三个访问速度、存储容量和每位价格都不相同的存储器构成一个存储系统,其中M1靠近CPU。回答下列问题:


(1) 给出这个三级存储系统的等效访问时间T,等效存储容量S和等效每位价格C的表 达式。
(2) 什么条件下,整个存储系统的每位平均价格接近于C3

   
 
  
 
  

2、一个虚拟存储系统最多有64个用户,每个用户程序最大不超过8192页,每页4KB,主存储器的容量为64MB。为了加快地址变换过程,采用快慢表结构,快表的容量为64个存储字,快表地址经散列函数变换得到。为避免散列冲突,需要一个相等比较器。
(1)给出虚拟地址的格式,标出各字段的名称和长度。
(2)给出主存地址的格式,标出各字段的名称和长度。
(3)散列变换部件的输入位数和输出位数各为多少?
(4)相等比较器的位数是多少?
(5)给出快表每个存储字的格式,标出各字段的名称和长度。

   
 
  
 
  

3、试比较四种高速缓存组织的优缺点:
(1)直接映射高速缓存
(2)全联想高速缓存
(3)组联想高速缓存
(4)区段映射高速缓存

   
 
  
 
  

4、对于一个采用组相联映象方式和FIFO替换算法的Cache,发现它的等效访问时间太长,为此,提出如下改进建议:
(1)增大主存的容量。
(2)提高主存的速度。
(3)增大Cache的容量。
(4)提高Cache的速度。
(5)Cache的总容量和组大小不变,增大块的大小。
(6)Cache的总容量和块大小不变,增大组的大小。
(7)Cache的总容量和块大小不变,增加组数。
(8)替换算法由FIFO改为LFU。
请分析以上改进建议对等效访问时间有何影响,其影响的程度如何?

   
 
  
 
  
三、计算

1、设有一个两层的存储器层次结构:M1和M2。M1的命中率用h表示,并分别令c1和c2为每千字节的成本,s1s2为存储器容量,t1t2为存取时间。
(1)在什么条件下,整个存储器系统的平均成本会接近于c2
(2)该层次结构的存储器有效存取时间ta是多少?
(3)令两层存储器的速度比r=t2/t1,并令E=t1/ta为存储系统的存取效率。试以
r和命中率h来表示E。
(4)请分别画出r=5、20和100时,E和h的关系图。
(5)如果r=100,为使E>0.95,要求的命中率h是多少?

   
 
  
 
  

2、一个程序由5个虚页组成,采用LFU替换算法,在程序执行过程中依次访问的页地址流如下:P4,P5,P3,P2,P5,P1,P3,P2,P3,P5,P1,P3
(1)可能的最高页命中率是多少?
(2)至少要分配给该程序多少个主存页面才能获得最高的命中率?
如果在程序执行过程中每访问一个页面,平均要对该页面内的存储单元访问
1024次,求访问存储单元的命中率。

   
 
  
 
  

 

3、一个两层存储系统有8个磁盘上的虚拟页面已经被映射到主存储器的4个页面框架(PF)中。某程序产生以下的页面踪迹:
1,0,2,2,1,7,6,0,1,2,0,3,0,4,5,1,5,2,4,5,6,7,6,7,2,4,2,7,3,3,2,3
(1) 上述页面踪迹,采用LRU替换策略,计算在主存储器中的命中率。
(2) 采用环形FIFO页面替换策略,计算在主存储器中的命中率。