【发布时间】:2013-01-17 14:28:27
【问题描述】:
以下是一个操作系统(Gate 2003 OS)的MMU描述:
处理器使用 2 级页表作为虚拟地址到物理地址 翻译。两个级别的页表都存储在主存储器中。 虚拟地址和物理地址都是 32 位宽。记忆是 字节可寻址。对于虚拟地址到物理地址的转换,10 虚拟地址的最高有效位用作索引 第一级页表,而接下来的 10 位用作索引 进入二级页表。的 12 个最低有效位 虚拟地址用作页面内的偏移量。假设 两级页表中的页表条目都是 4 个字节宽。 此外,处理器有一个翻译后备缓冲区 (TLB),其中 命中率96%。 TLB 缓存最近使用的虚拟页码 以及相应的物理页码。该处理器还有一个 物理地址缓存,命中率为 90%。主存访问 时间为 10 ns,缓存访问时间为 1 ns,TLB 访问时间也是 1ns。
问题是:
命中率 90% 的缓存和命中率 96% 的 TLB 有什么关系?操作系统首先检查哪里:数据还是指令?
【问题讨论】:
-
我认为在stackoverflow中发布作业问题不是一个好主意
标签: caching operating-system tlb memory-access