Поделиться через


Постановка в очередь запросов ввода-вывода в спящем режиме устройства

Пока устройство находится в спячем режиме, его драйверы должны помещать в очередь все запросы ввода-вывода, направленные на устройство. Процедуры поддержки IoAllocateWorkItem, IoQueueWorkItem и IoFreeWorkItem предоставляют один из способов постановки в очередь irP для отложенной обработки. Пример см. в описании механизма очередей, описанного для драйверов PnP в разделе Удержание входящих IRP при приостановке устройства.

Драйвер может получить доступ к устройству, только если устройство находится в рабочем (D0) состоянии. Драйвер не может коснуться регистров устройств, когда устройство находится в спящем режиме; устройство должно быть сначала возвращено в рабочее состояние.