阅读:1339回复:5
Win2K 设备驱动程序设计指南的第8章:
我想问问关于书上的例子:
(1)当测试程序执行到WriteFile时,StartIo例程产生一个中断,当执行到DpcForIsr 的最后,调用IoStartNextPacket,后者又调用StartIo例程,但是现在处理的是ReadFile相应的IRP,ReadFile相应的IRP是不能触发中断的,StatrIo例程又会调用IoStartNextPacket,后者有调用StartIo例程,又会调用 IoStartNextPacket...会不会如此循环调用下去,跳不出来啊!! |
|
沙发#
发布于:2002-08-17 19:49
IRP队列空就返回了,不会循环不完
|
|
板凳#
发布于:2002-08-17 21:58
你没理解我的意思,当WriteFile对应的DpcForIsr例程调用了IoCompleteRequest后,又调用IoStartNextPacket,这时IRP队列不为空,因为测试程序的ReadFile将产生下一个IRP,对应的IRP是不用中断的,但是IoStartNextPacket却调用StartIo例程,StartIo例程又调用IoStartNextPacket所以才会有我的问题。。
|
|
地板#
发布于:2002-08-18 17:48
这不是循环,根本没有循环
|
|
地下室#
发布于:2002-08-19 09:16
我想问问关于书上的例子: IoStartNextPacket只是说,这个IRP已经完了,可以开始下一个IRP了。你没有理解书的意思。 |
|
5楼#
发布于:2002-10-11 11:13
哪位能帮我EMAIL以下电子版的《Win2K 设备驱动程序设计指南》啊。本站上面的好象没有了。ASAP。 谢谢了
gsbean@elong.com |
|