다음을 통해 공유


IOCTL_STORAGE_DEVICE_POWER_CAP IOCTL(ntddstor.h)

드라이버는 IOCTL_STORAGE_DEVICE_POWER_CAP 사용하여 스토리지 디바이스에 대한 최대 작동 전력 소비 수준을 지정할 수 있습니다. OS는 디바이스를 지정된 최대값을 초과하지 않는 전원 상태로 전환하기 위해 최선을 다합니다. 그러나 이는 디바이스에서 지원하는 내용에 따라 달라집니다. 실제 최대값은 원하는 최대값보다 작거나 클 수 있습니다.

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

Irp->AssociatedIrp.SystemBuffer 최대 전원을 지정하는 STORAGE_DEVICE_POWER_CAP 구조체를 포함합니다.

입력 버퍼 길이

  • Parameters.DeviceIoControl.InputBufferLengthIrp->AssociatedIrp.SystemBuffer입력 매개 변수 버퍼의 크기를 바이트 단위로 나타내며 sizeof(STORAGE_DEVICE_POWER_CAP)보다 크거나 같아야 합니다.

출력 버퍼

작업이 성공하면 Irp->AssociatedIrp.SystemBuffer 출력 버퍼에 STORAGE_DEVICE_POWER_CAP 구조가 포함됩니다.

출력 버퍼 길이

Parameters.DeviceIoControl.OutputBufferLengthIrp->AssociatedIrp.SystemBuffer출력 매개 변수 버퍼의 크기를 바이트 단위로 나타냅니다. OutputBufferLengthsizeof(STORAGE_DEVICE_POWER_CAP)보다 크거나 같아야 합니다.

상태 블록

정보 필드는 반환된 바이트 수로 설정됩니다. 상태 필드는 STATUS_SUCCESS 또는 STATUS_INVALID_DEVICE_REQUEST, STATUS_INVALID_PARAMETER 또는 STATUS_NOT_SUPPORTED 설정됩니다.

발언

다시 부팅의 경우 IOCTL_STORAGE_DEVICE_POWER_CAP 효과는 지속되지 않습니다. NVMe 디바이스 재설정/전원 주기의 경우 IOCTL의 효과는 영구적입니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows Server 2016
헤더 ntddstor.h(Ntddstor.h 포함)

참고 항목

IO_STATUS_BLOCK

STORAGE_DEVICE_POWER_CAP

STORAGE_DEVICE_POWER_CAP_UNITS