ok100fen 发表于 2010-8-9 22:21:23

我还想问个问题

创建内核线程

创建了这个线程有什么用?

麻烦高手介绍一下

谢谢

Tesla.Angela 发表于 2010-8-9 22:58:50

“合法”方式调用Nt**函数

ok100fen 发表于 2010-8-9 23:02:17

麻烦斑竹举个例子
以便于理解

3q

ok100fen 发表于 2010-8-9 23:04:24

另外,创建的内核线程在哪个进程?
这个进程是固定的吗?

Tesla.Angela 发表于 2010-8-9 23:27:24

举例子?我不是发过一个例子吗(不是这个ID)?
内核线程创建在System进程内。

马大哈 发表于 2010-8-10 09:42:33

这个内核线程是不是可以理解为"内核代码运行时的基本单元"?

Tesla.Angela 发表于 2010-8-10 10:52:56

这个内核线程是不是可以理解为"内核代码运行时的基本单元"?
马大哈 发表于 2010-8-10 09:42 http://www.m5home.com/bbs/images/common/back.gif

不可以。
内核线程是运行在System进程内的线程。

cttnbcj 发表于 2010-8-10 16:20:41

回复 7# Tesla.Angela
难道我用my.exe打开一个驱动,系统和驱动处于my.exe上下文中,在驱动中建立一个内核线程,难道处在system上下文中?

Tesla.Angela 发表于 2010-8-10 17:10:51

自己在内核线程中调用一下PsGetCurrentProcessId不就知道了吗!

cttnbcj 发表于 2010-8-10 17:26:33

回复 9# Tesla.Angela


    牛牛说说嘛,我电脑没装IDE

Tesla.Angela 发表于 2010-8-10 17:31:07

回复Tesla.Angela


    牛牛说说嘛,我电脑没装IDE
cttnbcj 发表于 2010-8-10 17:26 http://www.m5home.com/bbs/images/common/back.gif


回复 7# Tesla.Angela
难道我用my.exe打开一个驱动,系统和驱动处于my.exe上下文中,在驱动中建立一个内核线程,难道处在system上下文中?

我现在慎言慎行,只敢说应该是。

xiaoly99 发表于 2010-8-10 18:24:48

排除法:运行在你进程上下文里的线程统统都是用户线程.
你见过在Ring3进程里运行的内核线程吗?
----------------我是杯具的分割线----------------
修改TcbPreviousMode为KernelMode,貌似也能实现像TA神牛一样合法的调用Nt系函数.
----------------我是杯具的分割线----------------

Tesla.Angela 发表于 2010-8-10 18:38:37

排除法:运行在你进程上下文里的线程统统都是用户线程.
你见过在Ring3进程里运行的内核线程吗?
---------- ...
xiaoly99 发表于 2010-8-10 18:24 http://www.m5home.com/bbs/images/common/back.gif


我觉得这样“不合法”。

马大哈 发表于 2010-8-10 19:59:48

有些晕..........

驱动主要是难调试,没VB这么方便.

要是好调试,好单步,自己慢慢像摸VB一样摸出来也是可以的,可惜这太需要耐心了,而我正好没有- -!

Tesla.Angela 发表于 2010-8-10 22:55:57

有些晕..........

驱动主要是难调试,没VB这么方便.

要是好调试,好单步,自己慢慢像摸VB一样摸出来也是 ...
马大哈 发表于 2010-8-10 19:59 http://www.m5home.com/bbs/images/common/back.gif


驱动可以用WinDBG调试

马大哈 发表于 2010-8-11 08:18:47

回复 15# Tesla.Angela


    所以这个不方便啊....只能以这种方式编译后调试,很磨人的耐心的......

当时被陈辉逼着学了快一个月的驱动,让这种方式给折磨傻了,于是就全丢了{:1_92:}

Tesla.Angela 发表于 2010-8-11 09:21:13

回复Tesla.Angela


    所以这个不方便啊....只能以这种方式编译后调试,很磨人的耐心的......

当 ...
马大哈 发表于 2010-8-11 08:18 http://www.m5home.com/bbs/images/common/back.gif


编译后调试倒没有什么,主要是如果蓝屏了,要等待好一段时间。

马大哈 发表于 2010-8-11 09:31:41

就是烦这个!

折腾几次后耐心全磨完了.

ok100fen 发表于 2010-8-11 10:09:15

老马,麻烦你问问陈辉,
这几个参数的用法及含义

Private Sub botton1_Click()
    Dim pid As Long
    pid = Val(Text1.Text)
    c_drv.IoControl &H420C027, VarPtr(pid), 4, 0, 0   
End Sub

cttnbcj 发表于 2010-8-11 10:12:39

回复 11# Tesla.Angela


   我是真的没搞清楚,很奇怪如何运行的? 看ARK工具确实是ring3进程无ring0线程,假如ring3进程上下文建立ring0线程,登记到system进程的线程中,那不是ring3进程关闭的话,建立的ring0线程没有关闭,还是会得到调度。。。。。。

Tesla.Angela 发表于 2010-8-11 13:16:35

回复Tesla.Angela


   我是真的没搞清楚,很奇怪如何运行的? 看ARK工具确实是ring3进程无ring0线程 ...
cttnbcj 发表于 2010-8-11 10:12 http://www.m5home.com/bbs/images/common/back.gif


可以把【系统线程】当做:由【用户进程】创建在【system进程】中的【远程线程】。
页: [1]
查看完整版本: 我还想问个问题