escape
驱动老牛
驱动老牛
  • 注册日期2002-02-01
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1124回复:8

当驱动遭遇超时

楼主#
更多 发布于:2002-11-25 08:59
在windows和linux下:
 

当某个操作超时,将作如何处理?
如何妥当的善后呢?

1。杀死/挂起超时线程,
2。不杀死/挂起超时线程,

请大虾做个选择!
unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-11-25 09:51
不理解。无法选择。呵呵。
驱动?线程?
escape
驱动老牛
驱动老牛
  • 注册日期2002-02-01
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-11-25 10:08
驱动程序中好像也有线程的概念啊啊。
不过与用户态线程不一样。

改个说法吧,比如某个函数执行的时间过长,已经超时,
然后应该咋办?

unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-11-25 10:19
kill了。别犹豫
escape
驱动老牛
驱动老牛
  • 注册日期2002-02-01
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-11-25 10:40
用什么方法函数kill呢?
好像会有后遗症,是否不够温柔呢?
比如造成一些非法数据,导致某些用户态或核心态线程空等结果呢?
希望谈一谈经验。谢了!
unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-11-25 11:20
一般内核里的代码非常讲究效率。
拿中断来说,中断产生,处理数据,就算没处理完,也不去处理了。其余的扔掉。
因此你的函数不能有超时,更不能超时等待。执行到哪里就到哪里。
你说的是那类设备?比如什么情况超时?
escape
驱动老牛
驱动老牛
  • 注册日期2002-02-01
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-11-25 11:25
老大真有你的!可惜我分数已经给完了,否则要多
给几分!
我只是假设有这种情况而已啊!
unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-11-25 11:51
分不是重要的。呵呵。
中断里的上下半部就是这个原因。
escape
驱动老牛
驱动老牛
  • 注册日期2002-02-01
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-11-25 11:55
深刻!
游客

返回顶部