【问题标题】:Virtual memory: If each page table entry maps one word and requires 4 bytes, how large is the whole page table for a 32-bit machine?虚拟内存:如果每个页表项映射一个字,需要 4 个字节,那么对于 32 位机器,整个页表有多大?
【发布时间】:2020-01-04 12:26:27
【问题描述】:

当我尝试解决它时,我发现虚拟地址是 20 位,因此条目的数量是 2^20,每个条目包含 1 个字,即 4 个字节。因此,2^20*4 字节,即 4 194 304 字节 ~4 MB 是页表的大小。 正确的?

【问题讨论】:

    标签: mips virtual-memory page-tables


    【解决方案1】:

    缺少信息:页面大小和页表结构(平面或分层)。

    但是,假设页面大小为 4k 字节且带有平面页表,则 页码 是您计算的 20 位 (32-12)。 (虚拟地址仍然是 32 位,物理地址可以相同、更小或更大)。

    这意味着对于每个使用虚拟内存的进程,它将有一个 4MB 的页表,假设进程的虚拟地址空间中的每个页面都有一个页表条目(并非总是如此,例如,某些 MIPS 进程布局最多只能为进程提供较低的 2GB)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-17
      • 1970-01-01
      • 1970-01-01
      • 2012-12-12
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      相关资源
      最近更新 更多