【问题标题】:PAE in x86-64 bit processors - Linux kernelx86-64 位处理器中的 PAE - Linux 内核
【发布时间】:2017-05-30 07:50:42
【问题描述】:

我注意到 CR4 寄存器中的 PAE 位在我的 Linux (3.19) x86-64 机器上打开了。 PAE 功能允许访问高达 64gb 的物理地址,但我不明白为什么在启用长模式时需要它。我查了一段时间,但没有找到满意的答案。

有什么建议吗?

【问题讨论】:

    标签: linux-kernel x86 operating-system x86-64 paging


    【解决方案1】:

    它正在使用 IA-32e 分页。

    如果 CR0.PG = 1、CR4.PAE = 1 和 IA32_EFER.LME =,则逻辑处理器使用 IA-32e 分页1.
    在 IA-32e 分页中,线性地址使用内存分页结构的层次结构进行转换,该结构使用 CR3 的内容定位。
    IA-32e 分页将 48 位线性地址转换为 52 位物理地址。
    虽然 52 位对应 4 PBytes,但线性地址仅限于 48 位;最多可以访问 256 TBytes 的线性地址空间 给定时间。


    x86 处理器支持三种分页模式:

    1. 32 位分页(CR0.PG = 1 和 CR4.PAE = 0)
    2. PAE 分页(CR0.PG = 1,CR4.PAE = 1,IA32_EFER.LME = 0)
    3. IA-32e 分页(CR0.PG = 1,CR4.PAE = 1,IA32_EFER.LME = 1)李>

    此处报告了总结差异的表格(不幸的是,作为图像)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-19
      • 1970-01-01
      • 2023-04-09
      • 2011-09-04
      • 1970-01-01
      • 2011-04-19
      • 1970-01-01
      相关资源
      最近更新 更多