news 2026/9/15 8:12:05

nt!IopInitializePlugPlayServices函数调用后nt!PpDeviceReferenceTable最左叶子节点是根节点HTREE\ROOT\0

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
nt!IopInitializePlugPlayServices函数调用后nt!PpDeviceReferenceTable最左叶子节点是根节点HTREE\ROOT\0

nt!IopInitializePlugPlayServices函数调用后nt!PpDeviceReferenceTable最左叶子节点是根节点HTREE\ROOT\0

0: kd> g
Breakpoint 1 hit
nt!IopInitializePlugPlayServices:
80e67f60 55 push ebp
1: kd> kc
#
00 nt!IopInitializePlugPlayServices
01 nt!IoInitSystem
02 nt!Phase1Initialization
03 nt!PspSystemThreadStartup
04 nt!KiThreadStartup
1: kd> x nt!PpDeviceReferenceTable
80b1fa40 nt!PpDeviceReferenceTable = struct _RTL_AVL_TABLE
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 (*((ntkrnlmp!_RTL_AVL_TABLE *)0xffffffff80b1fa40))
(*((ntkrnlmp!_RTL_AVL_TABLE *)0xffffffff80b1fa40)) [Type: _RTL_AVL_TABLE]
[+0x000] BalancedRoot [Type: _RTL_BALANCED_LINKS]
[+0x010] OrderedPointer : 0x0 [Type: void *]
[+0x014] WhichOrderedElement : 0x0 [Type: unsigned long]
[+0x018] NumberGenericTableElements : 0x0 [Type: unsigned long]
[+0x01c] DepthOfTree : 0x0 [Type: unsigned long]
[+0x020] RestartKey : 0x0 [Type: _RTL_BALANCED_LINKS *]
[+0x024] DeleteCount : 0x0 [Type: unsigned long]
[+0x028] CompareRoutine : 0x80c87772 [Type: _RTL_GENERIC_COMPARE_RESULTS (*)(_RTL_AVL_TABLE *,void *,void *)]
[+0x02c] AllocateRoutine : 0x80c87834 [Type: void * (*)(_RTL_AVL_TABLE *,unsigned long)]
[+0x030] FreeRoutine : 0x80c878de [Type: void (*)(_RTL_AVL_TABLE *,void *)]
[+0x034] TableContext : 0x0 [Type: void *]
1: kd> gu
nt!IoInitSystem+0x68f:
80e6554b 85c0 test eax,eax
1: kd> x nt!PpDeviceReferenceTable
80b1fa40 nt!PpDeviceReferenceTable = struct _RTL_AVL_TABLE
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 (*((ntkrnlmp!_RTL_AVL_TABLE *)0xffffffff80b1fa40))
(*((ntkrnlmp!_RTL_AVL_TABLE *)0xffffffff80b1fa40)) [Type: _RTL_AVL_TABLE]
[+0x000] BalancedRoot [Type: _RTL_BALANCED_LINKS]
[+0x010] OrderedPointer : 0x0 [Type: void *]
[+0x014] WhichOrderedElement : 0x0 [Type: unsigned long]
[+0x018] NumberGenericTableElements : 0x2e [Type: unsigned long]
[+0x01c] DepthOfTree : 0x6 [Type: unsigned long]
[+0x020] RestartKey : 0x0 [Type: _RTL_BALANCED_LINKS *]
[+0x024] DeleteCount : 0x0 [Type: unsigned long]
[+0x028] CompareRoutine : 0x80c87772 [Type: _RTL_GENERIC_COMPARE_RESULTS (*)(_RTL_AVL_TABLE *,void *,void *)]
[+0x02c] AllocateRoutine : 0x80c87834 [Type: void * (*)(_RTL_AVL_TABLE *,unsigned long)]
[+0x030] FreeRoutine : 0x80c878de [Type: void (*)(_RTL_AVL_TABLE *,void *)]
[+0x034] TableContext : 0x0 [Type: void *]


1: kd> kc
#
00 nt!IoInitSystem
01 nt!Phase1Initialization
02 nt!PspSystemThreadStartup
03 nt!KiThreadStartup
1: kd> kv
# ChildEBP RetAddr Args to Child
00 f789a838 80e632fd 80077000 00000000 89dd4020 nt!IoInitSystem+0x68f (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\ntos\io\iomgr\ioinit.c @ 599]
01 f789adac 80d391f0 80077000 00000000 00000000 nt!Phase1Initialization+0x9b3 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\ntos\init\init.c @ 2221]
02 f789addc 80b00d52 80e6294a 80077000 00000000 nt!PspSystemThreadStartup+0x2e (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\ntos\ps\create.c @ 2213]
03 00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16 [d:\srv03rtm\base\ntos\ke\i386\threadbg.asm @ 81]

1: kd> x nt!PpDeviceReferenceTable
80b1fa40 nt!PpDeviceReferenceTable = struct _RTL_AVL_TABLE
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 (*((ntkrnlmp!_RTL_AVL_TABLE *)0xffffffff80b1fa40))
(*((ntkrnlmp!_RTL_AVL_TABLE *)0xffffffff80b1fa40)) [Type: _RTL_AVL_TABLE]
[+0x000] BalancedRoot [Type: _RTL_BALANCED_LINKS]
[+0x010] OrderedPointer : 0x0 [Type: void *]
[+0x014] WhichOrderedElement : 0x0 [Type: unsigned long]
[+0x018] NumberGenericTableElements : 0x2e [Type: unsigned long]
[+0x01c] DepthOfTree : 0x6 [Type: unsigned long]
[+0x020] RestartKey : 0x0 [Type: _RTL_BALANCED_LINKS *]
[+0x024] DeleteCount : 0x0 [Type: unsigned long]
[+0x028] CompareRoutine : 0x80c87772 [Type: _RTL_GENERIC_COMPARE_RESULTS (*)(_RTL_AVL_TABLE *,void *,void *)]
[+0x02c] AllocateRoutine : 0x80c87834 [Type: void * (*)(_RTL_AVL_TABLE *,unsigned long)]
[+0x030] FreeRoutine : 0x80c878de [Type: void (*)(_RTL_AVL_TABLE *,void *)]
[+0x034] TableContext : 0x0 [Type: void *]
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 (*((ntkrnlmp!_RTL_BALANCED_LINKS *)0xffffffff80b1fa40))
(*((ntkrnlmp!_RTL_BALANCED_LINKS *)0xffffffff80b1fa40)) [Type: _RTL_BALANCED_LINKS]
[+0x000] Parent : 0x80b1fa40 [Type: _RTL_BALANCED_LINKS *]
[+0x004] LeftChild : 0x0 [Type: _RTL_BALANCED_LINKS *]
[+0x008] RightChild : 0xe129f320 [Type: _RTL_BALANCED_LINKS *]
[+0x00c] Balance : -1 [Type: char]
[+0x00d] Reserved [Type: unsigned char [3]]
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 ((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe129f320)
((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe129f320) : 0xe129f320 [Type: _RTL_BALANCED_LINKS *]
[+0x000] Parent : 0x80b1fa40 [Type: _RTL_BALANCED_LINKS *]
[+0x004] LeftChild : 0xe12a54a8 [Type: _RTL_BALANCED_LINKS *]
[+0x008] RightChild : 0xe128a5e8 [Type: _RTL_BALANCED_LINKS *]
[+0x00c] Balance : 1 [Type: char]
[+0x00d] Reserved [Type: unsigned char [3]]
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 ((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12a54a8)
((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12a54a8) : 0xe12a54a8 [Type: _RTL_BALANCED_LINKS *]
[+0x000] Parent : 0xe129f320 [Type: _RTL_BALANCED_LINKS *]
[+0x004] LeftChild : 0xe12925f0 [Type: _RTL_BALANCED_LINKS *]
[+0x008] RightChild : 0xe128c1e0 [Type: _RTL_BALANCED_LINKS *]
[+0x00c] Balance : 0 [Type: char]
[+0x00d] Reserved [Type: unsigned char [3]]
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 ((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12925f0)
((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12925f0) : 0xe12925f0 [Type: _RTL_BALANCED_LINKS *]
[+0x000] Parent : 0xe12a54a8 [Type: _RTL_BALANCED_LINKS *]
[+0x004] LeftChild : 0xe12883e0 [Type: _RTL_BALANCED_LINKS *]
[+0x008] RightChild : 0xe129c4d8 [Type: _RTL_BALANCED_LINKS *]
[+0x00c] Balance : 0 [Type: char]
[+0x00d] Reserved [Type: unsigned char [3]]
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 ((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12883e0)
((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12883e0) : 0xe12883e0 [Type: _RTL_BALANCED_LINKS *]
[+0x000] Parent : 0xe12925f0 [Type: _RTL_BALANCED_LINKS *]
[+0x004] LeftChild : 0xe12896e0 [Type: _RTL_BALANCED_LINKS *]
[+0x008] RightChild : 0xe12896c0 [Type: _RTL_BALANCED_LINKS *]
[+0x00c] Balance : 0 [Type: char]
[+0x00d] Reserved [Type: unsigned char [3]]
1: kd> dx -id 0,0,ffffffff89dd5240 -r1 ((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12896e0)
((ntkrnlmp!_RTL_BALANCED_LINKS *)0xe12896e0) : 0xe12896e0 [Type: _RTL_BALANCED_LINKS *]
[+0x000] Parent : 0xe12883e0 [Type: _RTL_BALANCED_LINKS *]
[+0x004] LeftChild : 0x0 [Type: _RTL_BALANCED_LINKS *]
[+0x008] RightChild : 0x0 [Type: _RTL_BALANCED_LINKS *]
[+0x00c] Balance : 0 [Type: char]
[+0x00d] Reserved [Type: unsigned char [3]]
1: kd> dt _DEVICE_REFERENCE 0xe12896e0+10
nt!_DEVICE_REFERENCE
+0x000 DeviceObject : 0x89db9c00 _DEVICE_OBJECT
+0x004 DeviceInstance : 0x89db9b54 _UNICODE_STRING "HTREE\ROOT\0"

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/14 22:49:53

Venera漫画阅读器完全攻略:从入门到精通的7个隐藏技巧

嘿,漫画爱好者们!今天我要和你分享Venera漫画阅读器的那些不为人知的强大功能。这款开源应用不仅仅是个阅读器,更是一个漫画资源管理的全能工具。无论你是刚接触Venera的新手,还是已经使用一段时间的用户,这篇文章都会…

作者头像 李华
网站建设 2026/9/13 1:38:58

从零搭建团队协作中枢:Planka看板部署实战手记

从零搭建团队协作中枢:Planka看板部署实战手记 【免费下载链接】planka planka - 一个优雅的开源项目管理工具,提供创建项目、看板、列表、卡片、标签和任务等功能,适用于需要进行项目管理和团队协作的程序员。 项目地址: https://gitcode.…

作者头像 李华
网站建设 2026/9/10 6:24:22

深度剖析典型电路图的硬件工作原理

从电路图看懂硬件世界:一个工程师的实战解析你有没有遇到过这样的场景?手头拿到一块陌生的开发板,或者一份密密麻麻的原理图,满屏都是电阻、电容、MOSFET和运放,却不知道从何下手分析。翻来覆去看了半天,只…

作者头像 李华
网站建设 2026/9/14 11:20:01

深度学习环境搭建避坑指南:Miniconda+PyTorch+GPU完整流程

深度学习环境搭建避坑指南:MinicondaPyTorchGPU完整流程 在深度学习项目启动前,最让人头疼的往往不是模型设计或数据处理,而是那个看似简单却暗藏玄机的环节——环境配置。你有没有遇到过这样的场景?论文代码拉下来后运行报错&…

作者头像 李华
网站建设 2026/9/10 6:24:26

TouchGal Galgame社区平台:重塑游戏文化体验的新范式

TouchGal Galgame社区平台:重塑游戏文化体验的新范式 【免费下载链接】kun-touchgal-next TouchGAL是立足于分享快乐的一站式Galgame文化社区, 为Gal爱好者提供一片净土! 项目地址: https://gitcode.com/gh_mirrors/ku/kun-touchgal-next 深夜的电脑屏幕前&a…

作者头像 李华
网站建设 2026/9/13 13:28:07

Windows终极自定义神器Windhawk:零基础打造专属系统体验

Windows终极自定义神器Windhawk:零基础打造专属系统体验 【免费下载链接】windhawk The customization marketplace for Windows programs: https://windhawk.net/ 项目地址: https://gitcode.com/gh_mirrors/wi/windhawk 还在为Windows系统千篇一律的界面而…

作者头像 李华