14.PTD与的基址
0xC0300000就是页目录的基址。
随便找一个软件测试下
通过0xC0300000找到的物理页就是页目录表
这个物理页即是页目录表本身也是页表
页目录表是一张特殊的页表,每一项PTE指向的不是普通的物理页,而是指向其他的页表.
如果我们要访问第N个PDE, 那么有如下公式:0xc0300000+N*4
----------------------------------------------------------------------------
----------------------------------------------------------------------------
这是PTT的基址
0xc0000000
拆分c0000000
1100 0000 00 //300
0000 0000 00
000
拆分c0001000
1100 0000 00 //300
0000 0000 01 //4
000
这对应的就是第二张PTT
页表被映射到了从0xC0000000到0xC03FFFFF的4M地址空间
在这1024个表中有一张特殊的表:页目录表
页目录被映射到了OxC0300000开始处的4K地址空间
----------------------------------------------------------------------------
----------------------------------------------------------------------------
掌握了这两个地址,就掌握了一个进程所有的物理内存读写权限
公式总结:
页目录索引(PDI)与页表索引(PTI)-10-10-12.
访问页目录表的公式:0xC0300000 + PDI*4
访问页表的公式:0xC0000000 +PDI4096 +PTI4