处理器使用2级页表进行虚拟到物理地址的转换。这两个级别的页表都存储在主存储器中。虚拟和物理地址均为32位宽。存储器是字节可寻址的。对于虚拟到物理地址的转换,虚拟地址的10个最高有效位用作第一级页面表的索引,而后10位用作第二级页面表的索引。虚拟地址的12个最低有效位用作页面内的偏移量。假定两个级别的页表中的页表项均为4字节宽。此外,处理器具有转换后备缓冲器(TLB),命中率为96%。 TLB缓存最近使用的虚拟页号和相应的物理页号。该处理器还具有一个物理寻址的高速缓存,命中率为90%。主存储器访问时间为10 ns,缓存访问时间为1 ns,TLB访问时间也为1 ns。
假设没有页面错误发生,则访问虚拟地址所花费的平均时间约为(最接近的0.5 ns)
(A) 1.5纳秒
(B) 2纳秒
(C) 3纳秒
(D) 4纳秒答案: (D)
解释:
The possibilities are
TLB Hit*Cache Hit +
TLB Hit*Cache Miss +
TLB Miss*Cache Hit +
TLB Miss*Cache Miss
= 0.96*0.9*2 + 0.96*0.1*12 + 0.04*0.9*22 + 0,04*0.1*32
= 3.8
≈ 4
为什么是22和32?
22是因为当发生TLB丢失时,它花费了1ns,而对于物理地址,它必须经过主存储器中的两个级别的页表并进行2次内存访问,并且在高速缓存中找到该页面所花费的时间为1ns,这总计共22
这个问题的测验