开发者

DeactivateDevice vs. IOCTL_BUS_DEACTIVATE_CHILD

开发者 https://www.devze.com 2023-02-22 21:50 出处:网络
I am trying to understand the pros and 开发者_如何学运维cons of using DeactivateDevice vs. IOCTL_BUS_DEACTIVATE_CHILD, to unload a device driver, in terms of power consumption. If I would like to chec

I am trying to understand the pros and 开发者_如何学运维cons of using DeactivateDevice vs. IOCTL_BUS_DEACTIVATE_CHILD, to unload a device driver, in terms of power consumption. If I would like to check the power consumption of the device when the driver was 1)loaded and 2)unloaded, which one would give me the most appropriate value in the latter case? Please suggest and let me know if I am missing any more info needed to answer my question. TIA.

EDIT: Also, it might be helpful in evaluating the answer for the above question if we know how the above two ways to unload a driver are fundamentally different.


It depends on what you want to do. IOCTL_BUS_ACTIVATE_CHILD is for bus drivers only (USB, PCI, etc...). upper level client drivers will use ActivateDeviceEx.

There is no equivalent wrapper function in the DDK for IOCTL_BUS_ACTIVATE_CHILD.

see: http://blogs.msdn.com/b/ce_base/archive/2007/04/19/how-bus-drivers-work.aspx

You can also use SetDevicePower to change the power state of a given physical device. (like the WiFi, BT, screen, etc...)

-PaulH

0

精彩评论

暂无评论...
验证码 换一张
取 消