首页
论坛
课程
招聘
雪    币: 241
活跃值: 活跃值 (17)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝

[系统底层] (求助)驱动开发的问题

2008-11-11 17:33 3308

[系统底层] (求助)驱动开发的问题

2008-11-11 17:33
3308
本来是想把这些问题放在《关于驱动开发的问题》里,不过又觉得不怎么好,所以又弄了个。
还是学驱动的时候有的问题,可能在一些高手眼里是很弱智的,但是你觉得弱智没关系,不过一定要回答我的问题:
1.调用了IoCallDriver,是直接调用发送IRP到的设备,还是先处理了本设备对象IoCallDriver后面的代码,再调用发送IRP到的设备?
2.IRP是从上层设备往下传的,那中断呢?过滤器驱动程序是不是一般不需要处理中断,只处理派遣例程?
3.如果你在键盘上面打些字,就会产生相应的中断,然后送给中断处理程序处理,那如果要监视它,看它输入了什么,是不是用IRP不能得到信息?(因为IRP是和操作系统通信的工具,而不是和硬件通信的工具)是不是只能用中断处理例程处理?如果是的话,大家的电脑键盘驱动都安装过了,那么不是要先卸载原来的键盘驱动?然后安装上自己的中断处理例程?
4.让IRP失败的话结果是什么?

HWS计划·2020安全精英夏令营来了!我们在华为松山湖欧洲小镇等你

最新回复 (5)
雪    币: 241
活跃值: 活跃值 (17)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
RYYMike 活跃值 2 2008-11-12 12:04
2
0
有没有人回答下?
雪    币: 203
活跃值: 活跃值 (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
qdk 活跃值 2008-11-12 12:13
3
0
修改南桥上的中断路由寄存器,把键盘中断路由到你的中断服务去。
雪    币: 241
活跃值: 活跃值 (17)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
RYYMike 活跃值 2 2008-11-12 12:19
4
0
谢谢了,不过其他问题呢?能不能帮忙解决下
雪    币: 203
活跃值: 活跃值 (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
qdk 活跃值 2008-11-12 12:34
5
0
我也是菜鸟!

1、调用不一定是同步的,可能是先把任务插到任务队列里,然后再由某个内核工作线程分派出去,这时候就是异步处理的
2、中断当然是先到中断服务程序,然后自己尽量分派出去(当然又是插到任务队列里,再由内核线程分派出去)

哈哈,我看的是linux的源码,估计windows也差不多吧。
中断服务就是个负责传递消息的,当然又需要也会自己直接处理一些东西,
这样中断相应的时效才最高。

IRP当然是从中断传出去,不断的往下传啦
雪    币: 241
活跃值: 活跃值 (17)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
RYYMike 活跃值 2 2008-11-12 17:15
6
0
那就是说IRP一部分是从中断传过来,另一部分从操作系统传过来?
游客
登录 | 注册 方可回帖
返回