-
-
[求助]驱动程序和一般进程的通信问题
-
发表于:
2008-11-13 12:54
5111
-
1.驱动程序如何和一般进程进行通信?有什么方式?(我知道直接去写个1到一个用户空间的虚拟地址,然后应用程序反复察看这个地址上的数据,这也是一种通信方式,不过我这里想问的是比较正规的通信方式,而且在内核的话虚拟内存会转变,不定是写到哪个空间去了)
2.事件通信怎么通?该用哪些函数?在驱动里你可以KeInitializeEvent一个事件,然后等待,接着等事件在其他内核线程被设置后,继续运行驱动代码,但是在一般进程的话怎么设置这个事件?
KeSetEvent是在ddk声明的,而不是<windows.h>和C++源文件里声明的,那该怎么设置这个事件呢?还有初始化和等待事件?
3.在中断运行代码会减少系统效率,所以一般的中断处理例程是不是直接创造一个IRP,然后发送?比如键盘的中断处理例程,是创造什么功能码的IRP?
就这些问题了,大家帮忙解决下,先谢谢了
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课