디바이스 전원 상태

디바이스 전원 상태는 컴퓨터의 다른 디바이스와 독립적으로 컴퓨터의 디바이스 전원 상태를 설명합니다. 디바이스 전원 상태의 이름은 D0, D1, D2 및 D3입니다. D0은 완전히 켜진 상태이고 D1, D2 및 D3은 저전력 상태입니다. 상태 번호는 전력 소비와 반비례합니다. 번호가 매겨진 상태가 많을수록 전력 사용량이 줄어듭니다. Windows 8 D3 상태는 D3hot 및 D3cold라는 두 하위 상태로 나뉩니다.

디바이스 전원 상태는 다음 특성으로 특징지어집니다.

  • 전력 소비: 디바이스에서 사용하는 전력은 얼마인가요?

  • 디바이스 컨텍스트: 디바이스가 이 상태에서 얼마나 많은 작동 컨텍스트를 유지하나요?

  • 디바이스 드라이버 동작: 디바이스를 완전히 작동 상태로 복원하려면 디바이스의 드라이버에서 수행해야 하는 작업은 무엇인가요?

  • 복원 시간: 디바이스를 완전히 작동 상태로 복원하는 데 얼마나 걸리나요? 대부분의 디바이스 유형에는 한 디바이스 클래스와 다음 디바이스 클래스가 거의 다른 복원 시간이 적습니다. GPU와 같은 몇 가지 유형의 디바이스에만 복원하는 데 훨씬 더 오래 걸리는 매우 큰 하드웨어 컨텍스트가 있습니다.

  • 절전 모드 해제 기능: 디바이스가 이 상태에서 절전 모드 해제를 요청할 수 있나요? 일반적으로 디바이스가 지정된 전원 상태(예: D2)에서 절전 모드 해제를 요청할 수 있는 경우 더 높은 전원 상태(D1)에서 절전 모드 해제를 요청할 수도 있습니다.

전원 상태의 정확한 정의는 디바이스별로 다릅니다. 모든 디바이스가 모든 상태를 정의하는 것은 아닙니다. 많은 디바이스는 D0 및 D3 상태만 정의합니다. 특정 디바이스에 대해 정의된 디바이스 전원 상태와 각 상태에 대한 운영 요구 사항을 확인하려면 디바이스 클래스 전원 관리 참조 사양을 참조하세요. (참조 사양은 ACPI/전원 관리 웹 사이트에서 사용할 수 있습니다.)

디바이스의 전원 상태가 시스템 전원 상태와 일치하지 않아도 합니다. 예를 들어 시스템이 시스템 작동 상태(S0)에 있더라도 일부 디바이스는 꺼져(D3) 상태일 수 있습니다.

디바이스의 전원 상태는 디바이스의 부모 버스의 전원 상태와 관련이 없는 것처럼 보일 수 있습니다. 예를 들어 부모 호스트 컨트롤러가 D3 상태일 때 USB 디바이스가 D2(선택적 일시 중단) 상태일 수 있습니다. 이러한 두 상태는 Dx 상태의 정의가 USB 및 USB 호스트 컨트롤러가 연결된 버스(일반적으로 PCI 또는 PCI Express)에서 다르기 때문에 일관성이 없는 것으로 보입니다.

일부 디바이스는 단일 디바이스 전원 상태 내에서 여러 가지 저전력 모드를 사용할 수 있습니다. 이러한 디바이스는 드라이버가 디바이스 전원 상태를 변경하지 않고 디바이스를 한 모드에서 다른 모드로 자동으로 전환할 수 있는 경우 이러한 모드를 사용할 수 있습니다. 그러나 일반적으로 모드 간에 사용자가 인식할 수 있는 차이가 없는 경우 디바이스는 가장 낮은 전원 모드만 사용해야 합니다. 저속 모드와 같은 저전력 모드가 성능에 부정적인 영향을 주거나 디바이스 드라이버 이외의 소프트웨어에 투명하지 않은 경우 하드웨어에서 자동으로 사용하지 않아야 합니다. 자세한 내용은 디바이스 클래스 전원 관리 참조 사양을 참조하세요.

드라이버 또는 전원 관리자는 디바이스 전원 상태 전환을 요청할 수 있으며 모든 드라이버는 이러한 전환을 요청하는 IRP를 처리할 준비가 되어 있어야 합니다. 자세한 내용은 아래 항목을 참조하세요.

디바이스 전원 상태에 대한 IRP_MN_QUERY_POWER 또는 IRP_MN_SET_POWER 보내기

디바이스 전원 상태에 대한 IRP_MN_QUERY_POWER 처리

디바이스 전원 상태에 대한 IRP_MN_SET_POWER 처리

시스템과 마찬가지로 디바이스는 작업 상태(D0)에서 저전력 상태(D1, D2 또는 D3) 및 저전력 상태에서 작업 상태로 전환할 수 있습니다. 다음 다이어그램은 유효한 디바이스 전원 상태 전환을 보여 주는 상태 그래프입니다.

유효한 디바이스 전원 상태 전환을 보여 주는 다이어그램

이 그래프는 D3을 D3hot 및 D3cold로 세분화합니다. D3hot 및 D3cold는 Windows 8 시작하여 정의됩니다. D0 상태 및 D3hot 하위 상태를 지원하려면 모든 디바이스가 필요합니다. 다이어그램에 표시된 다른 상태는 선택 사항입니다.

이전 그래프에서 D3hot에서 D3cold로의 전환은 디바이스 저전력 상태 간의 유일한 직접 전환입니다. 저전력 상태 간의 다른 모든 전환에는 D0으로의 중간 전환이 필요하며, 이를 통해 디바이스 드라이버는 필요에 따라 디바이스 하드웨어를 구성하여 다음 저전력 상태로 전환하거나 D0에 머무를 수 있습니다. 그러나 디바이스가 D3hot을 종료하고 디바이스에 대한 전원이 꺼지면 D3cold로 들어가기 때문에 디바이스 드라이버의 개입이 필요하지 않습니다. 이 드라이버는 디바이스가 D3hot에 들어가기 전에 디바이스 하드웨어의 필요한 구성을 수행합니다. D3hot에서 D3cold로 전환하기 위해 디바이스를 준비하는 데 추가 구성이 필요하지 않습니다. 자세한 내용은 드라이버에서 D3cold 지원을 참조하세요.

PCI 루트 포트에서 엔드포인트 D-상태 매핑으로

Windows 10 시스템에서 전체 플랫폼 전원 상태는 PCI 루트 포트를 포함하여 SoC(System on Chip) 통합 디바이스의 전원 상태(D-상태)에 따라 달라집니다. 개발 중인 플랫폼에 따라 PCI 루트 포트에 대한 D 상태 요구 사항은 각 플랫폼 전원 상태에 따라 달라질 수 있습니다. OEM은 플랫폼 및 디바이스 전원 상태 요구 사항에 대한 IHV 플랫폼별 설명서를 참조하는 것이 좋습니다.

아래 표에서는 PCI 루트 포트 및 연결된 엔드포인트의 전원 상태 매핑을 열거합니다. 루트 포트가 대상 D-상태를 입력하려면 아래에 나열된 엔드포인트의 D 상태를 달성해야 합니다.

루트 포트 대상 D-상태 엔드포인트 D-상태

D0

D0, D0:F1

D0:F1

D3hot

D3hot

D3cold*

*PCI D3cold 전원 상태에는 BIOS 및 디바이스 드라이버 지원이 필요합니다. 지원이 누락된 경우 PCI 엔드포인트는 D3Hot만 달성할 수 있습니다. 자세한 내용은 드라이버에서 D3Cold 지원을 참조하세요.