计算分页和偏移量以及页表大小的内存地址大小。

时间:2017-02-13 17:37:17

标签: memory-management operating-system size paging page-tables

这个问题主要是为了澄清我的理解。

假设我有一台32位计算机,虚拟内存空间为 2 ^ 32字节。

使用内存分页,每页 2 ^ 8字节。

因此内存地址大小 24位。由于(2 ^ 32/2 ^ 8 = 2 ^ 24字节)

偏移量 8位?这个我不太明白。由于我知道总地址 32 ,并且页面已经占用24,因此余数是 8 的偏移量。

最后是页面大小。如果每个物理内存地址存储在 32位 4字节)中,则表格大小为 2 ^ 26(2 ^ 24 * 2 ^ 2)< / strong>即可。这是对的吗?

1 个答案:

答案 0 :(得分:0)

页面大小=条目数*条目大小

在您的情况下,每个页面都是2^8 bytes,即 - 您需要8位偏移量。你没错。

这为Page留下了24位。 2 ^ 24个不同的页面。

流程X页面表的大小为:2 ^ 24 *条目大小。这不是你在这里提供的。

让我们假设每个条目需要32位。然后,2 ^ 24 * 32 = 2 ^ 24 * 2 ^ 5 = 2 ^ 29位。