DeactivateDevice vs. IOCTL_BUS_DEACTIVATE_CHILD - PullRequest
0 голосов
/ 08 апреля 2011

Я пытаюсь понять плюсы и минусы использования DeactivateDevice vs. IOCTL_BUS_DEACTIVATE_CHILD для выгрузки драйвера устройства с точки зрения энергопотребления.Если бы я хотел проверить энергопотребление устройства, когда драйвер был 1) загружен и 2) выгружен, какое из них дало бы мне наиболее подходящее значение в последнем случае?Пожалуйста, предложите и дайте мне знать, если мне не хватает дополнительной информации, необходимой для ответа на мой вопрос.TIA.

РЕДАКТИРОВАТЬ: Кроме того, это может быть полезно при оценке ответа на поставленный выше вопрос, если мы знаем, как два вышеупомянутых способа выгрузки драйвера принципиально различаются.

1 Ответ

1 голос
/ 09 апреля 2011

Это зависит от того, что вы хотите сделать.IOCTL_BUS_ACTIVATE_CHILD только для драйверов шины (USB, PCI и т. Д.).клиентские драйверы верхнего уровня будут использовать ActivateDeviceEx.

В DDK нет эквивалентной функции-оболочки для IOCTL_BUS_ACTIVATE_CHILD.

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

Вы также можете использовать SetDevicePower для изменениясостояние питания данного физического устройства.(например, WiFi, BT, экран и т. д.)

-PaulH

...