Share via


IOCTL_STORAGE_DEVICE_POWER_CAP IOCTL(winioctl.h)

Windows 애플리케이션은 이 제어 코드를 사용하여 스토리지 디바이스의 최대 작동 전력 소비 수준을 지정할 수 있습니다. OS는 디바이스를 지정된 최댓값을 초과하지 않는 전원 상태로 전환하는 것이 가장 좋습니다. 그러나 이것은 디바이스가 지원하는 사항에 따라 달라집니다. 실제 최댓값이 원하는 최댓값보다 작거나 클 수 있습니다.

이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.

BOOL DeviceIoControl(
  (HANDLE) hDevice,                 // handle to device
  IOCTL_STORAGE_DEVICE_POWER_CAP,   // dwIoControlCode
  (LPDWORD) lpInBuffer,             // input buffer
  (DWORD) nInBufferSize,            // size of input buffer
  (LPDWORD) lpOutBuffer,            // output buffer
  (DWORD) nOutBufferSize,           // size of output buffer
  (LPDWORD) lpBytesReturned,        // number of bytes returned
  (LPOVERLAPPED) lpOverlapped       // OVERLAPPED structure
);

설명

이 IOCTL은 드라이버가 적용할 것으로 예상되는 최대 전원 값으로 디바이스 드라이버에 전송됩니다. 그런 다음, 이 IOCTL은 디바이스 드라이버가 실제로 달성할 수 있는 것을 나타내는 값으로 를 반환합니다. 이 값은 원래 전송된 원하는 값보다 크거나 작거나 같을 수 있습니다.

예를 들어 최대 전력 소비 수준이 10와트, 8와트 및 6와트의 세 가지 작동 전원 상태를 구현하는 스토리지 디바이스 드라이버를 고려합니다. 이 IOCTL의 호출자가 디바이스가 9와트를 초과하지 않도록 지정하는 경우 9와트 미만인 가장 높은 상태이므로 8와트 상태를 선택해야 합니다. 이 IOCTL의 호출자가 디바이스가 5와트를 초과하지 않도록 지정하는 경우 6와트는 디바이스가 작동할 수 있는 최소값이므로 디바이스 드라이버는 6와트 상태를 선택합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows Server 2016
머리글 winioctl.h(Windows.h 포함)

추가 정보