阅读:3447回复:13
我想知道每个驱动程序是一个单独的进程,还是属于其它的进程?
我想知道每个驱动程序是一个单独的进程,还是属于其它的进程?
我编写的一个驱动程序是一个单独的进程还是属于其它的一个进程 啊,请指点。 |
|
最新喜欢:hunter... |
沙发#
发布于:2003-11-04 22:33
我觉得, 工作在 内核的时候,
无所谓,进程概念. 你如果真的要说 进程, 那就是 系统中的 调度进程( 包括 CPU 及内存) 还有其他的 文件系统进程等. 你想 一想, 驱动一直 回调 及 中断调用中. 只是相当于 系统中的一个 子函数一样. 呵呵.不过, 我也不清楚具体的. 我想是这样吧. 是我个人的 了解. |
|
板凳#
发布于:2003-11-05 13:07
我感觉你说的挺有道理的,如果他是作为一个函数的话,那么在驱动程序里调用IoGetCurrentProcess返回的是哪一个进程的句柄呢?
是返回调用她的那个进程的句柄吗? 例如,我用我写的一个用户程序调用我写的一个驱动程序(通过DeviceIoControl(..)),我在处理IRP时,调用IoGetCurrentProcess返回的句柄是我的这个用户程序的句柄吗? |
|
地板#
发布于:2003-11-05 13:42
是不是应该吧中断的级别考虑进去啊!
|
|
|
地下室#
发布于:2003-11-05 14:16
我感觉你说的挺有道理的,如果他是作为一个函数的话,那么在驱动程序里调用IoGetCurrentProcess返回的是哪一个进程的句柄呢? 呵呵.那肯定的. |
|
5楼#
发布于:2003-11-05 14:17
我感觉你说的挺有道理的,如果他是作为一个函数的话,那么在驱动程序里调用IoGetCurrentProcess返回的是哪一个进程的句柄呢? 那肯定的. |
|
6楼#
发布于:2003-11-08 12:44
我还是不明白返回的到底是什么啊?
|
|
7楼#
发布于:2003-11-08 20:50
应该是单独的进程。
进程的除了能够共享CPU以外,还有在内存中自己单独的数据空间和程序空间。 |
|
8楼#
发布于:2003-11-10 09:37
应该是单独的进程。 老大, 驱动可是工作在内核级的. 跟 OS 是 同一个 数据空间和程序空间 的. |
|
9楼#
发布于:2003-11-10 12:59
我想在OS中间就已经没有进程的概念了,进程实际上存在于资源分配单位的环境中,但是在OS的空间所有的资源是都能访问的,所以在了HookRegister这中方法的存在。我总觉得驱动是否是进程并不重要,因为在驱动中要涉及的资源共享问题就不象应用程序那么复杂!
|
|
|
10楼#
发布于:2003-11-30 17:22
感觉很象DLL一样,不能够简单的看成一个函数。我认为可以看成一个进程。
希望高手给个肯定的答复。帮你顶一下,顺便灌点水。 |
|
|
11楼#
发布于:2003-11-30 18:14
可能属于system进程,可能属于任意(不确定的)进程,也可能属于调用的app的进程。
system空间对所有Win32进程都是一样。 |
|
12楼#
发布于:2003-12-02 21:04
驱动程序不是进程,DDK里说,驱动程序的代码可以运行在
任意的上下文(Context)。但是驱动程序可以创建系统线程 (用 PsCreateSystemThread),所有的系统线程属于同一 进程(System 进程,这个进程的地址空间只包括系统空间) 。。。 |
|
13楼#
发布于:2003-12-02 23:40
谁调用的时候就在谁的进程里面
|
|