欢迎光临
我们一直在努力

汇编语言页转换:线性地址转换位物理地址

若允许分页,则处理器必须将 32 位线性地址转换为 32 位物理地址。这个过程会用到 3 种结构:

  • 页目录:一个数组,最多可包含 1024 个 32 位页目录项。
  • 页表:一个数组,最多可包含 1024 个 32 位页表项。
  • 页:4KB 或 4MB 的地址空间。

为了简化下面的叙述,假设页面大小为 4KB:

线性地址分为三个字段:页目录表项指针、页表项指针和页内偏移量。控制寄存器(CR3)保存了页目录的起始地址。如下图所示,处理器在进行线性地址到物理地址的转换时,采用如下步骤:

1) 线性地址引用线性地址空间中的一个位置。

2) 线性地址中 10 位的目录字段是页目录项的索引。页目录项包含了页表的基址。

3) 线性地址中 10 位的页表字段是页表的索引,该页表由页目录项指定。索引到的页表项包含了物理内存中页面的基址。

4) 线性地址中 12 位的偏移量字段与页面基址相加,生成的恰好是操作数的物理地址。

线性地址转换为物理地址

赞(0) 打赏
未经允许不得转载:hosteons中文网 » 汇编语言页转换:线性地址转换位物理地址

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册