虚拟索引物理标记的缓存多级页表 - 分层分页

时间:2013-10-29 20:30:41

标签: memory-management architecture operating-system paging virtual-memory

计算机使用46位虚拟地址,32位物理地址和三级分页页表 组织。页表基址寄存器存储第一级表(T1)的基地址 只占一页。 T1的每个条目存储第二级表(T2)的页面的基地址。 T2的每个条目存储第三级表(T3)的页面的基地址。 T3的每个条目都存储一个页面 表格条目(PTE)。 PTE的大小为32位。计算机中使用的处理器具有1 MB 16路设置 关联虚拟索引物理标记缓存。缓存块大小为64字节。

问:这台电脑的页面大小是多少?

(A)2(B)4(C)8(D)16

问:保证没有两个同义词映射到的最小页面颜色数是多少 这台计算机的处理器缓存中有哪些不同的设置?

(A)2(B)4(C)8(D)16

上一次登机考试的问题。我该如何解决这类问题?

2 个答案:

答案 0 :(得分:2)

所有页表都驻留在物理内存(RAM)中 由于物理地址是32位可寻址的,因此每个级别表保持32位 (4字节)RAM的地址

假设页面大小为x个字节。 (我们需要找到)

由于1级表的大小也是x(如1级表正好适应页面的问题所示),它可以容纳x / 4级2个表的x / 4个基址(也可以容纳一个页面) )并且每个2级表保存x / 4级3表的基址。

3级表的实体等于2 ^ 46 / x

即。 (x / 4)(x / 4)(x / 4)= 2 ^ 46 / x

解决x = 8192,以字节为单位  所以8192/1024 = 8 K字节

答案 1 :(得分:1)

回答第2部分....因为它的虚拟索引和物理标记所以对于缓存L组位和B字节位可以容纳一整页Ram以便有效使用,因此为了有效使用我们有 缓存大小/ 2 ^ A = 2 ^ l + b =页面大小................ http://cseweb.ucsd.edu/classes/fa10/cse240a/pdf/08/CSE240A-MBT-L18-VirtualMemory.ppt.pdf 页面大小= 1 MB / 16 = 64 KB ......... 因此,缓存将在相同的l + b位上复制8个不同的页面 所以我们将着色8页来区分它们。