IOCTL_STORAGE_DEVICE_POWER_CAP IOCTL(ntddstor.h)
드라이버는 IOCTL_STORAGE_DEVICE_POWER_CAP 사용하여 스토리지 디바이스에 대한 최대 작동 전력 소비 수준을 지정할 수 있습니다. OS는 디바이스를 지정된 최대값을 초과하지 않는 전원 상태로 전환하기 위해 최선을 다합니다. 그러나 이는 디바이스에서 지원하는 내용에 따라 달라집니다. 실제 최대값은 원하는 최대값보다 작거나 클 수 있습니다.
주 코드
입력 버퍼
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 포함) |