xxlangyun
驱动小牛
驱动小牛
  • 注册日期2004-11-22
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分272分
  • 威望58点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
阅读:1194回复:4

各位盟友:我想用在驱动里加一个数据处理的程序可以吗

楼主#
更多 发布于:2004-12-16 18:57
各位盟友:我想用在驱动里加一个数据处理的程序可以吗?
        我想把一个时间相关的数据处理程序加入到跑在内核级的USB驱动里,用线程实现,但是我不知道如何做?也不知道性能到底好不好?其中涉及到多线程的编程和对WIN系统内核的深入学习,有哪位仁兄做过这类的事情啊,请赐教。
邮箱:zengqingh@163.com
谢谢!!!!
Shentu
驱动小牛
驱动小牛
  • 注册日期2004-04-05
  • 最后登录2011-01-24
  • 粉丝0
  • 关注0
  • 积分234分
  • 威望24点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-12-16 23:14
应该没有问题,只要记得做好系统线程的善后工作,还有对共有资源的访问(也就是同步啦),比如拔掉usb设备的时候,就要把这个线程结束掉。。。。。。
具体你的那个时间相关什么意思?

因为驱动线程的优先级是由打开这个设备的进程的优先级类来决定的,而且win2k一般每20ms左右就要调度一下线程,看你的数据处理能不能满足?
xxlangyun
驱动小牛
驱动小牛
  • 注册日期2004-11-22
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分272分
  • 威望58点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-12-17 12:31
多谢盟友!!!
我那个时间相关的意思是指能在线程调度前得到一个结果,比如一个数组等,我想20MS应该足够了。

Shentu
驱动小牛
驱动小牛
  • 注册日期2004-04-05
  • 最后登录2011-01-24
  • 粉丝0
  • 关注0
  • 积分234分
  • 威望24点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-12-17 19:04
如果这样你就要仔细试试了,因为win2k内核是可以抢占式的线程调度,所以可能有高优先级的线程会抢占你的驱动线程,我们永远不能确定你的线程什么时候得到调度,以及什么时候可以得到结果,建议你最好不要用这种有时间要求的方式来做,可以试试其他的方法啊。。。
xxlangyun
驱动小牛
驱动小牛
  • 注册日期2004-11-22
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分272分
  • 威望58点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-06-24 17:09
哈哈,谢谢shentu给我建议,非常感谢,这段时间一直没时间来看看帖子,很抱歉直现在才回......
游客

返回顶部