'전력관리'에 해당되는 글 2건

  1. 2008.09.11 Windows Power Management Structures
  2. 2008.07.05 ACPI 레벨 2
2008. 9. 11. 10:48

Windows Power Management Structures


Windows system의 API가 제공하는 Power Management관련 structures(구조체)에 대해서 이야기 해보려 한다.

Windows system의 전력관리에 사용되는 구조체들은 다음과 같다.
ADMINISTRATOR_POWER_POLICY
BATTERY_INFORMATION
BATTERY_MANUFACTURE_DATE
BATTERY_QUERY_INFORMATION
BATTERY_REPORTING_SCALE
BATTERY_SET_INFORMATION
BATTERY_STATUS
BATTERY_WAIT_STATUS
DISPLAY_BRIGHTNESS
GLOBAL_MACHINE_POWER_POLICY
GLOBAL_POWER_POLICY
GLOBAL_USER_POWER_POLICY
MACHINE_POWER_POLICY
MACHINE_PROCESSOR_POWER_POLICY
POWER_ACTION_POLICY
POWER_POLICY
POWERBROADCAST_SETTING
PROCESSOR_POWER_INFORMATION
PROCESSOR_POWER_POLICY
PROCESSOR_POWER_POLICY_INFO
SYSTEM_BATTERY_STATE
SYSTEM_POWER_CAPABILITIES
SYSTEM_POWER_INFORMATION
SYSTEM_POWER_LEVEL
SYSTEM_POWER_POLICY
SYSTEM_POWER_STATUS
USER_POWER_POLICY

각각의 내용을 보면, 중복되는것도 있고 포함관계에 있는것도 있고.. 여튼 이리저리 복잡한 듯 하다.
일단 이녀석들의 내용을 알아야 원하는 데이터를 가져오거나 바꿀 수 있을 듯 한데.. -_-;;
귀찮다.. ㅋ

대충 계층도랄까? 포함관계에 있는 녀석들을 보니 이렇더군..
GLOBAL_POWER_POLICY
           - GLOBAL_MACHINE_POWER_POLICY
                      - SYSTEM_POWER_STATUS
           - GLOBAL_USER_POWER_POLICY
                      - POWER_ACTION_POLICY
                                 - POWER_ACTION

POWER_POLICY
           - USER_POWER_POLICY       
                      - POWER_ACTION_POLICY
                                 - POWER_ACTION
           - MACHINE_POWER_POLICY   
                      -  SYSTEM_POWER_STATUS

MACHINE_PROCESSOR_POWER_POLICY   
           -  PROCESSOR_POWER_POLICY   
                      -  PROCESSOR_POWER_POLICY_INFO

SYSTEM_POWER_POLICY   
           -  POWER_ACTION_POLICY
                      - POWER_ACTION
           - SYSTEM_POWER_STATUS
           - SYSTEM_POWER_LEVEL   
                      - POWER_ACTION_POLICY
                                 - POWER_ACTION
                       - SYSTEM_POWER_STATUS

SYSTEM_POWER_CAPABILITIES   
           - BATTERY_REPORTING_SCALE
           - SYSTEM_POWER_STATUS

ADMINISTRATOR_POWER_POLICY   
           - SYSTEM_POWER_STATUS

PROCESSOR_POWER_INFORMATION

POWERBROADCAST_SETTING

SYSTEM_POWER_INFORMATION

SYSTEM_BATTERY_STATE

BATTERY_INFORMATION

BATTERY_MANUFACTURE_DATE

BATTERY_QUERY_INFORMATION  

BATTERY_REPORTING_SCALE

BATTERY_SET_INFORMATION

BATTERY_STATUS

BATTERY_WAIT_STATUS

DISPLAY_BRIGHTNESS

해놓고 보니깐.. 이런 작업을 왜했나 싶은것이.. 필요 없는 짓을 한걸까? ㅋㅋ


2008. 7. 5. 16:11

ACPI 레벨



'ACPI'는 1996년 Intel, MS, Toshiba, 등에서 공동으로 개발한 '컴퓨터 전력관리 규격'이다. OS에 의해 프로세스, 컴퓨터에 접속한 각종 주변 장치등의 전력관리를 하게 된다.
자세한 내용은 차차 다루기로 하고, 일단 이번엔.. ACPI의 규격에 따른 레벨에 대해 알아보려 한다.

이 문서는 http://www.parkoz.com의 정재호님의 "절전을 위한 ACPI 레벨에 대한 간단한 설명"이라는 글을 참고로 작성한 문서이다.

'ACPI 레벨'은 다음과 같이 구분된다.
  • Global States(전역 상태)
  • Suspend States(절전 상태)
  • Processor States(프로세서 상태)
  • Device States(장치 상태)


Global States (전역 상태)
G0
   : 전원이 켜져 있으며 정상적으로 작동중인 상태. 일반적으로 컴퓨터가 켜져있다고 하면 S0 레벨이라 보면된다.
G1
   : 절전 상태. 시스템의 전력을 절약하기 위해 절전 상태(S1 ~ S4)로 돌린다.
G2
   : 전원이 꺼져있는 상태. 흔히 Soft Off라고 한다. PS2, USB, 랜 등에는 계속 전원이 공급되며 이들을 사용하여
    PC의 전원을 다시 켤 수 있다. S4는 공식적으로는 G1에 해당하지만 G2로 볼 수도 있다. (S5)
G3
   : 전원이 꺼져있는 것은 물론, 파워 서플라이가 메인보드에 전원을 공급하지 않는 상태. 흔히 컴퓨터를 종료하
    고 코드를 뽑거나 멀티탭의 전원을 차단하는 것을 말한다. Mechanical Off라고도 한다. (S6)


Suspend States(절전 상태)
절전 모드
 
일반적으로 S1, S3, S4를 말한다. 흔히 바이오스에서 S1(POS), S3(STR)에 대한 설정을 볼 수 있다. 호환성 문제로 상당수의 보드 회사들이 기본값을 S1로 설정해놓지만, 절전 효과를 원하는 사용자들은 S3를 사용한다. S2는 보통 지원되지 않는다.
S1
   : Power On Suspend. 컴퓨터가 켜진 상태에서 디스크(HDD,ODD..)와 모니터 등의 입출력장치의 전원을 차단
    한다. S1의 절전 모드에서는 CPU의 팬이 여전히 동작하고 있는 것을 볼 수 있고, CPU,RAM,VGA 등의 핵심
    부품들이 정상 작동하기에 절전 효과는 크지 않다.
S2
   : S1과 S3의 중간쯤 되는 모드로 CPU 전원은 차단되지만 램의 전원은 정상적으로 유지된다.
S3
   : Suspend To Ram. 램의 내용만을 보존하고 나머지 장치 대부분의 전원을 차단한다. 램의 갱신은 최대한 절
    제되며 램에 전원을 공급하기 위해 5V 레일에서만 전력을 끌어오게 된다. 절전 효과는 매우 크지만 시스템 내
    의 장치들이 이를 잘 지원해줘야 하며 지원해주지 못할 경우 오류가 발생할 수 있다. S3 절전 모드로 진입할
    시에는 CPU 팬이 꺼지게 된다.

최대 절전 모드
S4
   : Suspend To Disk. 램의 내용을 하드디스크에 저장한 뒤에 시스템의 전원을 완전히 차단한다. 다시 시스템을
    켤 경우 하드디스크에 저장된 데이터를 램에 다시 복구하여 상태를 복원한다. 전원이 완전히 차단되므로 절전
    효과가 가장 크다.
S3+S4
   : 혼성 절전 모드(Hybrid Sleep Mode). 비스타에 도입된 절전 모드이다. 노트북을 절전모드로 두고 깜빡 잊어
    버렸을 경우 배터리가 방전되어 작업중인 데이터를 모두 날려버릴 수 있다.
    혼성 모드는 이를 방지하기 위해 메모리의 내용을 하드디스크에 저장한 후 절전 모드(S1이나 S3)로 빠지게 된
    다. 안전하다는 장점은 있지만 절전 모드 진입 속도가 S1,S3에 비해 느리다는 단점이 있다.

기타
S0
   : 전원이 켜져있는 상태.
S5
   : 전원이 꺼져있는 상태. 흔히 Soft Off라고 한다.
S6
   : 전원이 꺼져있는 것은 물론, 파워 서플라이가 메인보드에 전원을 공급하지 않는 상태이다. S6은 공식 레벨은
    아니고 편이상 존재하는 레벨이다.


Processor States(프로세서 상태)
정상적인 작동
C0

   : Operating. CPU가 정상적으로 동작하고 있는 상태.
C1
   : Halt. CPU가 명령을 실행하지 않고 있는 상태.

절전 모드
CPU가 대기모드에 있으며 복귀를 위해 시간이 소요된다. 기본적으로는 C2, C3까지를 말하지만 C3을 좀 더 세분
화하여 구분 하기도 한다.
C2
   : Stop Clock. CPU가 대기 모드로 동작중이며 정상 복귀를 위해서 약간의 시간이 소요된다.
C3
   : Sleep, Deep Sleep. CPU가 캐쉬 일관성을 유지하지 않으나, 다른 상태는 유지한다.
C4
   : Deeper Sleep. C3의 향상 버전. C3보다 더 오랜 시간의 복귀시간이 소요된다.


Device States(장치 상태)
D0

   : 장치가 정상적으로 동작중인 상태.
D1, D2
   : 장치가 대기 상태에 있거나 절전(Low Power Consumption)인 상태.
D3
   : 장치가 꺼져있는 상태.