线程同步对象

Windows内核调试

线程同步对象


guozf 2009-12-17, 10:00 上午
请问知道用户态一个内核对象(比如Event)的句柄,如何获得这个Event对象的状态(是否被Set)以及他的reset type。

问题:
1。如何将用户态的句柄转换为内核对象的地址(内核空间)?
2。内核模式或者用户模式是否有一些API用来查询内核对象的信息?

多谢指教!

Re: 线程同步对象


格蠹老雷 2009-12-17, 14:28 下午
对于调试,可以在内核调试会话(XP下可以用LKD)中切换到指定的进程,然后再用!handle命令
!process 0 0 myexe.exe
.process xxxxx
!handle xx

Re: 线程同步对象


guozf 2009-12-17, 15:09 下午
谢谢Raymond.

我在WDK中找一个函数ObReferenceObjectByHandle,可以将用户态的句柄转换为内核态结构的地址PKEVENT。

先试验一下是否work了。

Powered by Community Server Powered by CnForums.Net