页表基址PAE(29912)

分析MmIsAddressValid函数

MmIsAddressValid 是 Windows 内核(对于29912分页是ntkrnlpa.exe)提供的一个函数,用于:

它用来检测一个地址 是否有有效页表项(PTE/PDE),并且 该页已经被 page-in(commit)且 present 位为 1。

MmIsAddressValid 只是一个外壳,它真正执行地址检查的是内部函数 MiIsAddressValid。

根据分析可以得出以下结论:

cpp 复制代码
PDE_address = (VA>>0x12)&0x3ff8 + 0xC0600000
PTE_address = (VA>>0x9)&0x7FFFF8 + 0xC0000000

最后拿GDT表地址0x80b99000验证一下公式,完全正确!

相关推荐
qq_3692243316 天前
Windows全系通用!ntdll.dll文件丢失、报错、闪退问题的完整排查与修复教程
windows·dll·dll修复·dll丢失·dll错误
阿米亚波16 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm
caimouse17 天前
Reactos 第 10 章 网络操作 — 10.3.1 NIC驱动
网络·windows
初圣魔门首席弟子17 天前
Node.js 详细介绍(知识库版)
windows·qt·node.js·知识库
CHENG-JustDoIt17 天前
AI工具 | 爆火开源项目Odysseus AI 工作台:从项目介绍、部署情况及其使用等多方位分析指南(含详细步骤)
大数据·人工智能·windows·python·ai·开源·github
kingbal17 天前
Windows:flutter环境搭建
windows·flutter
未若君雅裁17 天前
Python 数据容器详解,list、tuple、str、set、dict 到底怎么选
windows·python·list
CodeKwang17 天前
Windows 环境 OCCT 8.0 编译构建及与 Qt6 项目集成
windows·qt·opencascade
我是伪码农17 天前
小兔鲜1-25
linux·服务器·windows
vx-Biye_Design17 天前
springboot安阳地区研学旅游服务小程序-计算机毕业设计源码12785
java·vue.js·windows·spring boot·tomcat·maven·mybatis