哪些客户端正在使用驱动程序

Which clients are using a driver?

本文关键字:驱动程序 客户端      更新时间:2023-10-16

我需要一个空闲的驱动程序(加载到设备上,但根本没有被使用)来获得一些统计数据。我需要确保没有线程/客户端正在使用驱动程序。我试图看看是否有一种方法来实现这一点,所以我可以编程地杀死/停用客户端/线程,如果有的话,正在使用驱动程序,以确保它是空闲的。请建议。

如果您使用的是Windows Embedded Compact 7,您可能可以使用一个过滤器驱动程序,它可以插入到您正在测试的驱动程序前面。过滤器驱动程序可以阻止任何呼叫到达您的驱动程序,因此有效地使您的驱动程序空闲。

过滤器驱动程序是Compact 7中的一个新功能,因此如果您使用的是旧版本,它将无法帮助您。

我不太明白。如果你编写驱动程序,你就是进入驱动程序的每个入口点的看门人。你可以允许/禁止客户端调用任何你想要的(例如,信号量,互斥,布尔标志等)。你会知道是否有人在"使用"驱动程序,因为可能有人叫Open而不是Close。或者像Read或Write这样的方法已经进入,但尚未退出。