当前位置: 技术问答>linux和unix
linux中r3如何进行中断响应
来源: 互联网 发布时间:2016-02-12
本文导语: 我以前是在windows下写驱动的,现在linux时间不长,以前在win32下响应中断使用的是r3应用将一个event的HANDLE用DeviceIOControl传递给驱动,然后r3启动一个线程死等event,一旦中断发生ISR简单处理一下把中断抹掉,然后驱动...
我以前是在windows下写驱动的,现在linux时间不长,以前在win32下响应中断使用的是r3应用将一个event的HANDLE用DeviceIOControl传递给驱动,然后r3启动一个线程死等event,一旦中断发生ISR简单处理一下把中断抹掉,然后驱动的DCP将那个event置位,r3中的线程就得以继续就可以开始处理中断和相关数据了。
但是linux下似乎没有见到类似的东西,现在r3用ioctrl循环查询,效率太低了,linux下有没有类似的或者高效一些的处理方式。
谢谢了。
但是linux下似乎没有见到类似的东西,现在r3用ioctrl循环查询,效率太低了,linux下有没有类似的或者高效一些的处理方式。
谢谢了。
|
可以用tasklet和软中断机制,了解下linux中断的下半部应该对你有帮助.
|
Linux下BH, tasklet, 任务队列, 软中断都可以.
我不知道Windows中断是否分上下半部, 我说的这些都是下半部的处理方法, 也可以算机制.
建议可以看看LKD.
我不知道Windows中断是否分上下半部, 我说的这些都是下半部的处理方法, 也可以算机制.
建议可以看看LKD.