IA32e下分页的开启:概述

内存分布
IA32e下的地址用64位来表示,但CPU只使用了其中的前52位,即4PB的最大物理内存寻址空间,而开启分页后,CPU只使用其中48位,即256TB的最大虚拟内存寻址空间,而到了Windows,则更是只使用了其中44位,即只用16TB的虚拟内存寻址空间,其中0000000000000000-000007FFFFFFFFFF是用户层地址空间,而FFFFF80000000000-FFFFFFFFFFFFFFFF则是内核地址空间,前16位会被CPU忽略,而构造的页表则会忽略44-48位。
下面是Windows在IA32e下的虚拟内存分布图:
IA32e下Windows虚拟内存分布
页表构成
和传统的IA32的两级页表以及开启PAE后三级的三级页表不同,IA32e的页表是四级页表,每级占9位,共36位,加上页内偏移12位,正好48位。
第一级页表叫做PLM4表,每一个表项8字节,共512项,每一项表示128GB,指向了对应的第二级页表叫做PDPT,既页目录指针表,每一个表项8字节,共512项,每一项标识1GB的虚拟内存空间(这个结构在IA32中也有,但需要开启PAE并且只有4项),其既可以指向一个1G的大页面,也可以指向一个第三级页表(取决于PAT位的状态)也就是IA32下熟知的PageDirectory,而PDT同样既可以指向一个2M的大页面,或者指

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值