【问题标题】:MMU page table descriptor size of indexes索引的 MMU 页表描述符大小
【发布时间】:2018-06-21 10:45:51
【问题描述】:

我正在尝试为 Baremetal 中的 Cortex-A v8 64 位设置具有 2 个间接级别的虚拟地址映射。第 2 级页表将包含表描述符,第 3 级页表将包含块条目。

通过查看 64KB 页面的文档: http://infocenter.arm.com/help/topic/com.arm.doc.den0024a/ch12s03.html#BABIIEFG

我不明白“2 级索引”和“3 级索引”的大小是如何计算的,以及是否需要遵循相同的方式。 在此示例中,表 2 有 8192 个条目(因此需要 13 位),表 3 使用 13 位寻址。 是否可以更改“2 级索引”的大小?如果我有 3 个间接级别,我如何知道索引的大小?

【问题讨论】:

    标签: arm arm64 cortex-a armv8


    【解决方案1】:

    首先,这里有一个关于ARMv8页表设计的general description

    对于不同的页面大小(4kb、16kb 和 64kb),索引位(9 位、11 位和 13 位)是固定的。可以在上面的链接中找到有关位信息的详细信息。 如果你使用的是 3 级页表,那么它应该是 16kb 的页粒,每级对应的索引位是 11。

    最后,这里是我之前发布的the answer,用于解释 AArch64 页表遍历。或许了解ARM页表对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多