分页机制
我看了一网文分页机制,如下:
PTE_Address=(VirtualAddress>>12)*4+0xC0000000
PDE_Address=(VirtualAddress>>22)*4+0xC0300000
PTE和PDE什么区别啊?
比如我想得到0xC0000000的物理地址那我就读取0xC0300000这个地址的数据就是了【ring0】
CR3是保存4M页映射表的起物理地址?4M要1024个页啊,他们不是连续的?不连的话那CR3就忙了,随时都得变
我想CR3仅仅是为了加快访问速度吧,比较到0xC0000000哪里去读物理地址是要花时间的
高手指教
------解决方案--------------------
并不是为了提高访问速度
是提供一种兼容和一种保护
用户态是绝对碰不到r0的
你只有非法闯进去
或加载个驱动