- 4
- 0
- 约3.23万字
- 约 50页
- 2026-06-03 发布于北京
- 举报
在上一篇文章《驱动开发:内核中实现Dump进程转储》中我们实现了ARK工具的转存功能,本篇文章继续以
内存为出发点介绍VAD结构,该结构的全程是VirtualAddressDescriptor即虚拟地址描述符,
VAD是一个AVL自平衡二叉树,树的每一个节点代表一段虚拟地址空间。程序中的代码段,数据段,堆段
都会各种占用一个或多个VAD节点,由一个MMVAD结构完整描述。
VAD结构的遍历效果如下:
那么这个结构在哪?每个进程都有自己独立的VAD结构树,这个结构通常在EPROCESS结构里面,
在内核调试模式下使用dt_EPROCESS可得到如下信息。
可以看到在本系统中VAD的偏移是+0x658紧跟其后的还有vadCount的计数等。
在上一篇文章《驱动开发:内核中实现Dump进程转储》中我们实现了ARK工具的转存功能,本篇文章继续
以内存为出发点介绍VAD结构,该结构的全程是VirtualAddressDescriptor即虚拟地址描述符,
VAD是一个AVL自平衡二叉树,树的每一个节点代表一段虚拟地址空间。程序中的代码段,数据段,堆
段都会各种占用一个或多个VAD节点,由一个MMVAD结构完整描述。
VAD结构的遍历效果如下:
那么这个结构在哪?每一个进程都有自己单独的VAD结构树,这个结构
原创力文档

文档评论(0)