版主好,求求帮帮我,驱动设计是这样的,启动一次数据DMA传输,传输完成以后,在DMA完成中断的中断服务例程ISR中调用KeSetEvent,触发事件,主线程KeWaitForSingleObject函数响应。现在的问题是,运行一段时间后2分钟左右主线程运行到KeWaitForSi...
全文
回复(5) 2009-09-29 10:23 来自版块 - 非USB硬件驱动开发
表情
vaccy搭车问一下啊,我采用的是write queue。 WriteDispatch/WriteQueueStartio 和DpcForIsr 的代码执行经常相互打乱。 为什么会这样呢? 为什么优先级高的代码会被打乱呢?(2009-11-17 10:16)
zkme请问楼主加入队列用什么函数啊,我现在也遇到类似问题.(2009-11-16 16:11)
tqijin谢谢您热心回帖,通过以上机制来同步可能还存在问题,我见过很多人这么用都有问题, 即使把KeSetEvent 放在中断延迟调用里也是一样, 现在采用多加入一个队列的方法,把处理以后的IRP放入另外一个队列, 等待DMA中断以后,从该队列中取出IRP ,完成IRP , 结果很好, 再...(2009-10-24 22:20)
iwasmuIf Wait is set to FALSE, the caller can be running at IRQL <= DISPATCH_LEVEL. Otherwise, callers of KeSetEvent must be running at IRQL = ...(2009-10-23 20:26)
xp4105代码发给我看看 nemoon4105@gmail.com(2009-10-02 01:54)

返回顶部