Debugging Tools for Windows |
!pcitree扩展显示PCI设备对象的信息,包括子PCI总线和CardBus总线,以及附加到他们上的设备。
Windows 2000 | Kdextx86.dll |
Windows XP和之后 | Kdexts.dll |
下面是一个示例:
Bus 0x0 (FDO Ext fe517338)
0600 12378086 (d=0, f=0) devext fe4f4ee8 Bridge/HOST to PCI
0601 70008086 (d=d, f=0) devext fe4f4ce8 Bridge/PCI to ISA
0101 70108086 (d=d, f=1) devext fe4f4ae8 Mass Storage Controller/IDE
0604 00211011 (d=e, f=0) devext fe4f4788 Bridge/PCI to PCI
Bus 0x1 (FDO Ext fe516998)
0200 905010b7 (d=8, f=0) devext fe515ee8 Network Controller/Ethernet
0100 81789004 (d=9, f=0) devext fe515ce8 Mass Storage Controller/SCSI
0300 0519102b (d=10, f=0) devext fe4f4428 Display Controller/VGA
Total PCI Root busses processed = 1
要根据最后的设备显示来理解输出的内容。它的base class 为03、subclass 为00、Device ID 为0x0519,、Vendor ID 为0x102B。这些值是设备本身固有的。
"d="后面的数字是设备号;"f="后的数字是功能号(function number)。"devext"后是设备扩展的地址: 0xFE4F4428。最后显示base class 名字和subclass名字。
要获得某个设备的更多信息,可以使用!devext扩展命令,并且将设备扩展地址作为参数。对这类设备,命令应该像下面一样:
如果!pcitree扩展产生一个错误,通常意味着PCI符号没有正确的加载。使用.reload pci.sys来修正这个问题。
查看Plug and Play调试来获得该扩展命令的应用。关于PCI总线和PCI设备对象的信息,查看 Windows Driver Kit (WDK)文档。