【发布时间】:2014-10-26 19:09:37
【问题描述】:
我的架构类有一个关于确定页表大小的硬件问题。我看到这里已经有一个关于这个的 SO 条目:
Determine page table size for virtual memory
但我无法将其应用于我的问题。
我知道一般等式是:
(总页数)x(页面大小)
但是当我做数学时,这些数字没有意义。有人可以帮我看看我做错了什么吗?
字节可寻址存储器,
48位虚拟空间,
16 kB 页面大小(14 位表示),
4 GB 物理内存(22 位表示),&
每页的有效、脏、引用位
一个应用程序的表大小是多少?
总页数 = 2^48 / 2^14 = 2^34
页面大小 = 16 kB
总页面大小 =(总 # 页)x(页面大小)= 2^34 x 16 kB = 274877906944 kB ?!?!?
我们将不胜感激 - 显然我做错了什么。
谢谢。
【问题讨论】:
-
1) 这是单级页表吗? 2) 进程的虚拟页数限制是虚拟地址空间的最大值吗?页表项是 32 位还是 64 位?
标签: caching memory virtual-memory