硬件

段页式访存——线性地址到物理地址的转换

2019-05-20  本文已影响30人  madao756

前言:段页式的访存的内容还没有结束。。。还有一部分知识,线性地址到物理地址的转换。话不多说,让我们开始吧。

假设页的大小是 4KB,每个页表项占 4B,则理论上一个页表有多大?(虚拟空间大小是 4GB)

页表项数目 = 4 GB / 4 KB = 1 MB

所以,

页表大小 = 1 MB × 4 B = 4 MB

注意!

页的大小是 4KB。也就是说,一个页是放不下的。所以我们要采用多级页表的方式

整体过程

(在这里说的是 IA-32 架构,也就是只有两层页表)

线性地址 ------> 物理地址的整体过程如下:

用文字叙述:

什么是 CR3 寄存器

在这里一共要介绍 3 种「控制寄存器」

这样就完成了访存的所有内容。我们来回顾一下

举个栗子

IA-32中,执行“movl 8(%ebp), %eax” 中取数操作的大致过程如下:

上一篇 下一篇

猜你喜欢

热点阅读