【发布时间】:2012-01-15 12:07:00
【问题描述】:
对于 32 位虚拟地址空间,怎么可能同时拥有每个 4 字节的 PTE 和 4kb 页面?
我在研究虚拟内存时遇到了这个例子。
我认为如果我们有 4KB 页面,那么我们必须有 12 个偏移位(如 VPO 或 PPO)。现在,我们还剩下 20 位。那么,怎么可能拥有每个大小为 4 字节的 PTE?
【问题讨论】:
标签: virtual-memory
对于 32 位虚拟地址空间,怎么可能同时拥有每个 4 字节的 PTE 和 4kb 页面?
我在研究虚拟内存时遇到了这个例子。
我认为如果我们有 4KB 页面,那么我们必须有 12 个偏移位(如 VPO 或 PPO)。现在,我们还剩下 20 位。那么,怎么可能拥有每个大小为 4 字节的 PTE?
【问题讨论】:
标签: virtual-memory
我想我明白了。
故事是这样的:PTE 不一定携带 VPN 位,它们之间的链接是这样的:我们使用 VPN 位来计算相应 PTE 的地址。 Base Pointer(特定进程的PT地址)+一些VPN位(如果我们使用一级页面,那么我们可以使用所有这些)
【讨论】: