blue
驱动大牛
驱动大牛
  • 注册日期2001-04-25
  • 最后登录2010-10-15
  • 粉丝0
  • 关注0
  • 积分55分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
阅读:1230回复:3

PassThru 的MPSend()的IRQL降低有影响吗?

楼主#
更多 发布于:2002-04-19 08:51
TO: Huyg and 其它大虾,
  我在PassThru 的MPSend()中发送 packet时,需要调用我的PCI卡来加密,这时我需要且必须将它的工作从DISPATCH_LEVEL 转移到 PASSIVE_LEVEL ,然后在PASSIVE_LEVEL 上处理Packet, 并发送它。但我不知这样作对程序或是NDIS或是系统有影响吗?

[Edited on 4/19/02 by blue]
jeffhu
驱动牛犊
驱动牛犊
  • 注册日期2002-02-21
  • 最后登录2005-09-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-04-19 10:22
我觉得还是在MPsend()中只是把包加入一个队列中。
然后开一个系统线程来处理队列中的包。
我以前做的一个miniport driver就是这样的
很稳定,不过队列要开大一些
hehe
blue
驱动大牛
驱动大牛
  • 注册日期2001-04-25
  • 最后登录2010-10-15
  • 粉丝0
  • 关注0
  • 积分55分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-04-19 10:51
我也是要开一个线程,但我的想法是:
对Packet过滤,当遇到符合条件的Packet时,就启用线程,处理这个Packet(加密或是其它工作);否则,就将这个原始Packet发送。
对于维护一个Packet的队列,我有点迷茫,能否给点提示:比如使用哪几个函数?
jeffhu
驱动牛犊
驱动牛犊
  • 注册日期2002-02-21
  • 最后登录2005-09-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-04-19 14:20
不用什么函数
我的做法是开一个结构数组
结构中有buffer,标志位等
在send中把包加入队列,并置一个标志位
在线程中对包进行处理,发送,完毕后清标志位
线程可以老开着吧,没有要处理的包就空着
hehe
游客

返回顶部