本节内容 线性地址的管理 视频提供:昆山爱达人信息技术有限公司 官网地址:www.bcdaren.com 联系QQ:1250121864 QQ交流群 :49759272 联系电话:0512-57882866
<1> 线性地址有4G 但未必都能访问 <2> 所以需要记录,哪些地方分配了 1、进程空间的地址划分 分区 x86 32位Windows 空指针赋值区 0x00000000 - 0x0000FFFF 用户模式区 0x00010000 - 0x7FFEFFFF 64KB禁入区 0x7FFF0000 - 0x7FFFFFFF 内核 0x80000000 - 0xFFFFFFFF 特别说明: <1> 线性地址有4G 但未必都能访问 <2> 所以需要记录,哪些地方分配了 1、线性地址有4G 但未必都能访问:访问一个 2、所以需要记录,哪些地方分配了,哪些地方没有分配 3、
2、用户空间线性地址的管理: EPROCESS ... +0x11c VadRoot 结构体说明: nt!_MMVAD +0x000 StartingVpn //线性地址开始位置(页为单位) +0x004 EndingVpn //线性地址结束位置(页为单位) +0x008 Parent //父节点 +0x00c LeftChild //左子树 +0x010 RightChild //右子树 +0x014 u +0x018 ControlArea +0x01c FirstPrototypePte +0x020 LastContiguousPte +0x024 u2 遍历:start end/level/
3、内存属性: kd> dt _MMVAD_FLAGS nt!_MMVAD_FLAGS +0x000 CommitCharge +0x000 PhysicalMapping +0x000 ImageMap //1 镜像文件 0 其他 +0x000 UserPhysicalPages +0x000 NoChange +0x000 WriteWatch +0x000 Protection //1 READONLY 2 EXECUTE 3 EXECUTE _READ 4 READWITER //5 WRITECOPY 6 EXECUTE _READWITER 7 EXECUTE_WRITECOPY +0x000 LargePages +0x000 MemCommit +0x000 PrivateMemory //1 PrivateMemory 2 Map 分析:PrivateMemory 内存类型 Protection 保护类型
昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 课后练习: <线上班>学员可见