IOCTL_STORAGE_DEVICE_POWER_CAP IOCTL (ntddstor.h)
Un controlador puede usar IOCTL_STORAGE_DEVICE_POWER_CAP para especificar un nivel máximo de consumo de energía operativo para un dispositivo de almacenamiento. El sistema operativo hará lo mejor posible para realizar la transición del dispositivo a un estado de alimentación que no superará el máximo especificado; sin embargo, esto depende de lo que admita el dispositivo. El máximo real puede ser menor o mayor que el deseado.
Código principal
Búfer de entrada
Irp->AssociatedIrp.SystemBuffer contiene una estructura STORAGE_DEVICE_POWER_CAP que especifica la potencia máxima.
Longitud del búfer de entrada
- Parameters.DeviceIoControl.InputBufferLength indica el tamaño, en bytes, del búfer de parámetros de entrada en Irp-AssociatedIrp.SystemBuffer>, que debe ser mayor o igual que
sizeof(STORAGE_DEVICE_POWER_CAP)
.
Búfer de salida
Si la operación se realiza correctamente, el búfer de salida de Irp-AssociatedIrp.SystemBuffer> contendrá una estructura STORAGE_DEVICE_POWER_CAP.
Longitud del búfer de salida
Parameters.DeviceIoControl.OutputBufferLength indica el tamaño, en bytes, del búfer de parámetros de salida en Irp-AssociatedIrp.SystemBuffer>. OutputBufferLength debe ser mayor o igual que sizeof(STORAGE_DEVICE_POWER_CAP)
.
Bloque de estado
El campo Información se establece en el número de bytes devueltos. El campo Estado se establece en STATUS_SUCCESS, o posiblemente en STATUS_INVALID_DEVICE_REQUEST, STATUS_INVALID_PARAMETER o STATUS_NOT_SUPPORTED.
Comentarios
Para un reinicio, el efecto IOCTL_STORAGE_DEVICE_POWER_CAP no es persistente. En el caso de un ciclo de restablecimiento o energía de un dispositivo NVMe, el efecto del IOCTL es persistente.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 10 |
Servidor mínimo compatible | Windows Server 2016 |
Encabezado | ntddstor.h (incluya Ntddstor.h) |