맨위로가기

고급 전원 관리

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

고급 전원 관리(APM)는 장치의 전원을 관리하기 위한 계층화된 접근 방식을 제공한다. APM은 APM 인식 애플리케이션, OS별 APM 드라이버, APM 인식 BIOS 간의 통신을 통해 작동하며, BIOS 호출 인터페이스를 사용하여 운영 체제에 관계없이 사용할 수 있다. APM은 BIOS에서 APM 드라이버로 전원 관리 이벤트를 전송하고, APM 드라이버는 함수 호출을 통해 BIOS에 정보와 요청을 보내는 방식으로 양방향 통신을 지원한다. APM은 전원 관리 이벤트와 APM 함수를 사용하여 시스템 및 장치의 전원 상태를 제어하며, 시스템 전원 상태는 켜짐, APM 활성화, 대기, 일시 중단, 꺼짐으로 구분되고, 장치 전원 상태는 켜짐, 전원 관리, 저전력, 꺼짐으로 나뉜다. 2005년 이후 APM은 고급 구성 및 전원 인터페이스(ACPI)로 대체되었다.

더 읽어볼만한 페이지

  • 바이오스 - 아메리칸 메가트렌즈
    아메리칸 메가트렌즈(AMI)는 1985년에 설립된 회사로, BIOS 펌웨어, 서버용 마더보드, 스토리지 컨트롤러 등을 공급하며, 현재는 AMIBIOS, Aptio, AMIDiag 등 다양한 제품을 제공한다.
  • 바이오스 - 부트 섹터
    부트 섹터는 시스템 부팅 코드를 담은 저장 매체의 특정 영역으로, 볼륨 부트 레코드(VBR)와 마스터 부트 레코드(MBR)로 나뉘며, BIOS는 이를 실행하고 UEFI는 부트로더를 직접 로드하지만 바이러스 공격에 취약하다.
고급 전원 관리
일반 정보
약칭APM
개발인텔, 마이크로소프트
최초 게시1992년
최신 버전1.2
최신 버전 날짜1996년
도메인전원 관리
후속 표준ACPI

2. APM의 구조 및 작동 방식

APM은 기본 입출력 시스템(BIOS) 호출을 전제로 하는 인터페이스로, 운영 체제(OS)에서 BIOS를 호출할 수 있다면 OS에 관계없이 사용할 수 있다. BIOS 호출 인터페이스로, 리얼 모드, 가상 86 모드, 32비트 BIOS 호출을 지원하지만, 32비트 BIOS 호출을 초기화하려면 앞의 두 가지 중 하나가 필요하다. APM의 주요 기능은 다음과 같다.


  • 소프트웨어에 의한 전원 제어
  • 메모리 이미지를 유지한 채 CPU나 주변 장치의 전원을 꺼 전력 소비를 억제하는 서스펜드/재개 기능
  • 배터리 관리


APM은 처음에는 주로 노트북에 탑재되었지만, 소프트웨어에 의한 전원 제어 기능의 인터페이스로서 데스크톱 컴퓨터에도 도입되었다.

모바일 용도로 개발된 80386SL 이후의 CPU는 APM 구현을 지원하는 시스템 관리 모드를 제공한다. 이 모드는 OS에서 트랩할 수 없는 특수한 인터럽트를 통해 전원 관리 이벤트 등을 처리한다. APM에서는 OS 측에 전원 관리 이벤트가 통지되지 않아, OS는 BIOS 호출을 통해 정기적으로 조사(폴링)해야 했다.

APM은 기본적인 기능만 규정했고, 일부 주변 기기 전원 관리에 대한 규정은 있었지만, 다양한 보조적인 전원 관리 기능은 벤더가 공개하지 않은 하드웨어레지스터나 BIOS 인터페이스 등을 통해 접근하는 장치 드라이버에 의해 제공되어 한계를 보였다. 또한, BIOS 구현이 복잡하여 OS와의 충돌도 잦았다.

2005년 이후, 이러한 문제로 인해 APM은 ACPI로 대체되었다.

2. 1. 계층 구조

APM은 계층화된 접근 방식을 사용하여 장치를 관리한다. APM 인식 애플리케이션(장치 드라이버 포함)은 OS별 APM 드라이버와 통신한다. 이 드라이버는 하드웨어를 제어하는 APM 인식 BIOS와 통신한다. 장치별로 APM 제어를 거부할 수 있는 기능이 있는데, 이는 드라이버가 하드웨어 장치와 직접 통신하려는 경우 사용할 수 있다.

의사소통은 양방향으로 이루어진다. 전원 관리 이벤트는 BIOS에서 APM 드라이버로 전송되고, APM 드라이버는 함수 호출을 통해 BIOS에 정보와 요청을 보낸다. 이런 방식으로 APM 드라이버는 BIOS와 운영 체제 사이의 중개자 역할을 한다.

전원 관리는 두 가지 방식으로 이루어진다. 위에서 언급한 기능 호출을 통해 APM 드라이버에서 BIOS로 전원 상태 변경을 요청하고 장치 활동에 따라 자동으로 실행된다.

APM 1.0 및 APM 1.1에서는 전원 관리가 BIOS에 의해 거의 완전히 제어된다. APM 1.2에서는 운영 체제가 PM 시간(예: 일시 중단 시간 초과)을 제어할 수 있다.

APM의 계층

2. 2. 작동 방식

APM은 계층화된 접근 방식을 사용하여 장치를 관리한다. APM 인식 애플리케이션(장치 드라이버 포함)은 OS별 APM 드라이버와 통신한다. 이 드라이버는 하드웨어를 제어하는 APM 인식 BIOS와 통신한다. 장치별로 APM 제어를 거부할 수 있는 기능이 있는데, 이는 드라이버가 하드웨어 장치와 직접 통신하려는 경우 사용할 수 있다.

의사소통은 양방향으로 이루어진다. 전원 관리 이벤트는 BIOS에서 APM 드라이버로 전송되고, APM 드라이버는 함수 호출을 통해 BIOS에 정보와 요청을 보낸다. 이런 방식으로 APM 드라이버는 BIOS와 운영 체제 사이의 중개자 역할을 한다.

전원 관리는 두 가지 방식으로 이루어진다. 위에서 언급한 기능 호출을 통해 APM 드라이버에서 BIOS로 전원 상태 변경을 요청하고 장치 활동에 따라 자동으로 실행된다.

APM 1.0 및 APM 1.1에서는 전원 관리가 BIOS에 의해 거의 완전히 제어된다. APM 1.2에서는 운영 체제가 PM 시간(예: 일시 중지 시간 초과)을 제어할 수 있다.

3. 전원 관리 이벤트

APM BIOS에서 운영 체제로 보낼 수 있는 전원 이벤트는 12가지(대기, 일시 중단 및 재개 요청, 배터리 부족 알림 등)와 OEM에서 정의한 이벤트가 있다.[2] APM 드라이버는 이벤트 변경 알림을 정기적으로 폴링한다.[2]

이름코드설명
시스템 대기 요청 알림0x0001
시스템 일시 중단 요청 알림0x0002
정상 재개 시스템 알림0x0003
중요 재개 시스템 알림0x0004
배터리 부족 알림0x0005
전원 상태 변경 알림0x0006
시간 업데이트 알림0x0007
중요 시스템 일시 중단 알림0x0008
사용자 시스템 대기 요청 알림0x0009
사용자 시스템 일시 중단 요청 알림0x000A
시스템 대기 재개 알림0x000B
기능 변경 알림0x000C설정 또는 장치 삽입/제거로 인해

[2]

APM에서는 운영 체제 측에 전원 관리 이벤트가 통지되지 않으며, 운영 체제에서 이를 알기 위해서는 BIOS 호출을 통해 정기적으로 조사(폴링)해야 했다.[2]

4. APM 함수

APM 드라이버는 전원 관리 상태를 질의하거나 전원 상태 전환을 요청하기 위해 21개의 APM 함수 호출을 사용한다.[2] 이러한 함수 호출에는 BIOS에 CPU 사용량 정보를 알려 CPU를 저전력 상태 또는 전체 전력 상태로 전환하거나, 장치의 현재 전원 상태를 검색하고, 전원 상태 변경을 요청하는 것 등이 있다.

이름코드설명
APM 설치 확인0x00
APM 실 모드 인터페이스 연결0x01
APM 보호 모드 16비트 인터페이스 연결0x02실 모드 또는 virtual86 모드를 방지한다.
APM 보호 모드 32비트 인터페이스 연결0x03실 모드 또는 virtual86 모드를 방지한다.
APM 인터페이스 연결 해제0x04
CPU 유휴0x05시스템 일시 중단을 요청한다.
0) 타이머 틱 인터럽트가 발생할 때까지 클럭 정지.
1) 느린 클럭[2]
CPU 사용 중0x06드라이버는 시스템 APM에 CPU의 클럭 속도를 복원하도록 지시한다.
전원 상태 설정0x07시스템 또는 장치를 일시 중단/대기/꺼짐 상태로 설정한다.
전원 관리 활성화/비활성화0x08
APM BIOS 전원 켜기 기본값 복원0x09
전원 상태 가져오기0x0A"백업 전원 켜짐" AC 상태와 배터리 상태를 지원한다.
PM 이벤트 가져오기0x0BAPM 이벤트를 확인한다. 1초에 한 번 호출해야 한다.
전원 상태 가져오기0x0C
장치 전원 관리 활성화/비활성화0x0D
APM 드라이버 버전0x0E
전원 관리 참여/해제0x0F특정 장치에 대한 APM 관리.
기능 가져오기0x10
재개 타이머 가져오기/설정/비활성화0x11
링 표시에서 재개 활성화/비활성화0x12
타이머 기반 요청 활성화/비활성화0x13
OEM APM 설치 확인0x80APM BIOS가 OEM 하드웨어 종속 기능을 지원하는지 알려준다.
OEM APM 기능0x80OEM 특정 기능에 대한 접근.


5. 전원 상태

APM 사양은 시스템 전원 상태와 장치 전원 상태를 정의한다. APM은 컴퓨터 시스템과 APM 인식 하드웨어가 구현할 수 있는 전원 상태를 정의하며, 각 상태에 대한 자세한 설명은 하위 섹션을 참고하면 된다.

5. 1. 시스템 전원 상태

APM은 컴퓨터 시스템에 대해 다음과 같은 5가지 전원 상태를 정의한다.

  • 전원 켜짐: 컴퓨터 전원이 켜져 있고, 어떤 장치도 절전 모드에 있지 않은 상태이다.
  • APM 활성화: 컴퓨터 전원이 켜져 있고, APM이 필요에 따라 장치 전원 관리를 제어하는 상태이다.
  • APM 대기: 대부분의 장치가 저전력 상태에 있고, CPU는 속도가 느려지거나 중지되며, 시스템 상태가 저장된다. 컴퓨터는 사용자가 키보드의 키를 누르는 등의 활동을 하면 빠르게 이전 상태로 돌아갈 수 있다.
  • APM 일시 중단: 대부분의 장치는 전원이 꺼져 있지만, 시스템 상태는 저장된다. 컴퓨터는 이전 상태로 돌아갈 수 있지만, 시간이 비교적 오래 걸린다. 최대 절전 모드는 APM 일시 중단 상태의 특수한 형태이다.
  • 꺼짐: 컴퓨터가 꺼져 있는 상태이다.


APM은 기본 입출력 시스템(BIOS) 호출을 전제로 하는 인터페이스로, 운영 체제(OS)에서 BIOS를 호출할 수 있다면 OS에 관계없이 사용할 수 있다. BIOS 호출 인터페이스에는 리얼 모드에서의 호출, 가상 86 모드에서의 호출, 그리고 32비트 BIOS 호출이 지원되지만, 32비트 BIOS 호출을 초기화하려면 앞의 두 가지 중 하나가 필요하다. APM 기능으로는 소프트웨어에 의한 전원 제어, 메모리 이미지를 유지한 채 CPU나 주변 장치 전원을 끄고 전력 소비를 억제하는 서스펜드/재개 기능, 배터리 관리 등이 있다. 처음에는 주로 노트북에 탑재되었지만, 소프트웨어에 의한 전원 제어 기능 인터페이스로서 데스크톱 컴퓨터에도 도입되었다.

모바일 용도로 개발된 80386SL 이후 CPU에서는 APM 구현을 지원하는 기능이 있다. 이는 시스템 관리 모드라는 동작 모드이며, OS에서는 트랩할 수 없는 특수한 인터럽트를 계기로 전환하여 전원 관리 이벤트 등을 처리한다. APM에서는 OS 측에 전원 관리 이벤트가 통지되지 않으며, OS 측에서 알기 위해서는 BIOS 호출을 통해 정기적으로 조사(폴링)해야 했다.

5. 2. 장치 전원 상태

APM은 계층화된 접근 방식을 사용하여 장치를 관리한다. APM 인식 애플리케이션(장치 드라이버 포함)은 OS별 APM 드라이버와 통신한다. 이 드라이버는 하드웨어를 제어하는 APM 인식 BIOS와 통신한다. 장치별로 APM 제어를 거부할 수 있는 기능이 있는데, 이는 드라이버가 하드웨어 장치와 직접 통신하려는 경우 사용할 수 있다.

의사소통은 양방향으로 이루어진다. 전원 관리 이벤트는 BIOS에서 APM 드라이버로 전송되고, APM 드라이버는 함수 호출을 통해 BIOS에 정보와 요청을 보낸다. 이런 방식으로 APM 드라이버는 BIOS와 운영 체제 사이의 중개자 역할을 한다.

전원 관리는 두 가지 방식으로 이루어진다. 위에서 언급한 기능 호출을 통해 APM 드라이버에서 BIOS로 전원 상태 변경을 요청하고 장치 활동에 따라 자동으로 실행된다.

APM 1.0 및 APM 1.1에서는 전원 관리가 BIOS에 의해 거의 완전히 제어된다. APM 1.2에서는 운영 체제가 PM 시간(예: 일시 중지 시간 초과)을 제어할 수 있다.

APM은 또한 APM 인식 하드웨어가 구현할 수 있는 전원 상태를 정의한다. APM 인식 장치가 모든 상태를 구현해야 하는 것은 아니다.

네 가지 상태는 다음과 같다.

  • 장치 켜짐: 장치가 완전 전원 모드이다.
  • 장치 전원 관리: 장치는 여전히 전원이 켜져 있지만 일부 기능은 사용할 수 없거나 성능이 저하될 수 있다.
  • 장치 저전력: 장치가 작동하지 않는다. 장치를 '깨울' 수 있도록 전원이 유지된다.
  • 장치 꺼짐: 장치의 전원이 꺼져 있다.

6. 하드웨어 구성 요소

ATA 및 SATA 규격은 하드 드라이브에 대한 APM 규정을 정의하며, 이는 스핀다운 빈도와 항상 켜져 있는 성능 사이의 절충을 명시한다. BIOS 측 APM과 달리, ATA APM 및 SATA APM은 폐지된 적이 없다.[3]

과도한 스핀다운 빈도는 불필요하게 부하 사이클을 축적하여 드라이브 수명을 단축시킬 수 있다. 대부분의 최신 드라이브는 30만 사이클을 견딜 수 있도록 설계되었으며 일반적으로 최소 60만 사이클 이상을 지속한다. 반면에 드라이브를 스핀다운하지 않으면 전력 소비와 열 발생이 증가한다. 높은 온도는 하드 드라이브의 수명도 줄인다.[4]

APM은 기본적인 기능만 규정했고, 일부 주변 기기의 전원 관리에 대한 규정은 있었지만, 다양한 보조적인 전원 관리 기능은 벤더에 의해 공개되지 않은 하드웨어레지스터나 BIOS 인터페이스 등을 통해 접근하는 장치 드라이버 등에 의해 제공되어 한계를 보였다. 또한, BIOS의 구현도 복잡하여 OS와의 충돌도 일어나기 쉬웠다.

2005년 현재, 이러한 문제로 인해 ACPI에 그 지위를 넘겨주었다.

6. 1. CPU

CPU 코어(APM에서 CPU 클럭, 캐시, 시스템 버스 및 시스템 타이머로 정의됨)는 APM에서 특별 취급을 받으며, 전원이 꺼지는 마지막 장치이자 전원이 다시 켜지는 첫 번째 장치이다. CPU 코어는 항상 APM BIOS를 통해 제어된다(드라이버를 통해 제어하는 옵션은 없음). 드라이버는 APM 함수 호출을 사용하여 CPU 사용량에 대해 BIOS에 알릴 수 있지만, 이 정보에 따라 조치를 취하는 것은 BIOS의 역할이다. 드라이버는 CPU에게 전력 절약 상태로 전환하도록 직접 지시할 수 없다.[1]

기본 입출력 시스템(BIOS) 호출을 전제로 하는 인터페이스로, 운영 체제(OS) 측에서 BIOS를 호출할 수 있다면 OS에 관계없이 사용할 수 있다. BIOS 호출 인터페이스로, 리얼 모드에서의 호출, 가상 86 모드에서의 호출, 그리고 32비트 BIOS 호출이 지원되지만, 32비트 BIOS 호출의 초기화에는 앞의 두 가지 중 하나가 필요하다. 기능으로는 소프트웨어에 의한 전원 제어, 메모리 이미지를 유지한 채 CPU나 주변 장치의 전원을 끄고 전력 소비를 억제하는 서스펜드/재개 기능, 배터리 관리 등이 있다.[2] 처음에는 주로 노트북에 탑재되었지만, 소프트웨어에 의한 전원 제어 기능의 인터페이스로서 데스크톱 컴퓨터에도 도입되었다.[2]

모바일 용도로 개발된 80386SL 이후의 CPU에서는 APM 구현을 지원하는 기능이 있다. 이는 시스템 관리 모드라는 동작 모드이며, OS에서는 트랩할 수 없는 특수한 인터럽트를 계기로 전환하여 전원 관리 이벤트 등을 처리한다. APM에서는 OS 측에 전원 관리 이벤트가 통지되지 않으며, OS 측에서 알기 위해서는 BIOS 호출을 통해 정기적으로 조사(폴링)해야 했다.[3]

6. 2. ATA/SATA 드라이브

ATA 및 SATA 규격은 하드 드라이브의 고급 전원 관리(APM) 규정을 정의하며, 이는 스핀다운 빈도와 항상 켜져 있는 성능 사이의 균형을 조절한다. BIOS 기반 APM과 달리, ATA APM 및 SATA APM은 폐지되지 않았다.[3]

과도하게 스핀다운을 하면 불필요하게 부하 사이클이 쌓여 드라이브 수명이 짧아질 수 있다. 대부분의 최신 드라이브는 30만 사이클을 견디도록 설계되었으며, 보통 최소 60만 사이클 이상을 버틴다. 반면, 드라이브를 스핀다운하지 않으면 전력 소비와 발열이 증가한다. 높은 온도는 하드 드라이브의 수명을 줄인다.[4]

7. APM의 종말과 ACPI로의 전환

APM은 계층화된 접근 방식을 사용하여 장치를 관리한다. APM 인식 애플리케이션(장치 드라이버 포함)은 OS별 APM 드라이버와 통신하며, 이 드라이버는 하드웨어를 제어하는 APM 인식 BIOS와 통신한다. 장치별로 APM 제어를 거부할 수 있는데, 이는 드라이버가 하드웨어 장치와 직접 통신하려는 경우에 사용 가능하다.

의사소통은 양방향으로 이루어진다. 전원 관리 이벤트는 BIOS에서 APM 드라이버로 전송되고, APM 드라이버는 함수 호출을 통해 BIOS에 정보와 요청을 보낸다. APM 드라이버는 BIOS와 운영 체제 사이의 중개자 역할을 하는 것이다.

전원 관리는 APM 드라이버에서 BIOS로 전원 상태 변경을 요청하는 방식과 장치 활동에 따라 자동으로 실행되는 방식, 두 가지로 이루어진다. APM 1.0 및 1.1에서는 전원 관리가 BIOS에 의해 거의 완전히 제어되었으나, APM 1.2에서는 운영 체제가 PM 시간(예: 일시 중지 시간 초과)을 제어할 수 있게 되었다.

BIOS 호출을 전제로 하는 인터페이스이므로, OS 측에서 BIOS를 호출할 수 있다면 OS에 관계없이 사용할 수 있다. BIOS 호출 인터페이스로는 리얼 모드에서의 호출, 가상 86 모드에서의 호출, 그리고 32비트 BIOS 호출이 지원되지만, 32비트 BIOS 호출을 초기화하려면 앞의 두 가지 중 하나가 필요하다. APM의 기능으로는 소프트웨어에 의한 전원 제어, 메모리 이미지를 유지한 채 CPU나 주변 장치의 전원을 끄고 전력 소비를 억제하는 서스펜드/재개 기능, 배터리 관리 등이 있다. 처음에는 주로 노트북에 탑재되었지만, 소프트웨어에 의한 전원 제어 기능 인터페이스로서 데스크톱 컴퓨터에도 도입되었다.

모바일 용도로 개발된 80386SL 이후의 CPU에서는 APM 구현을 지원하는 시스템 관리 모드라는 동작 모드가 있다. 이는 OS에서 트랩할 수 없는 특수한 인터럽트를 계기로 전환되어 전원 관리 이벤트 등을 처리한다. APM에서는 OS 측에 전원 관리 이벤트가 통지되지 않으며, OS 측에서 이를 알기 위해서는 BIOS 호출을 통해 정기적으로 조사(폴링)해야 했다.

APM은 기본적인 기능만 규정했고, 일부 주변 기기의 전원 관리에 대한 규정은 있었지만, 다양한 보조적인 전원 관리 기능은 벤더에 의해 공개되지 않은 하드웨어레지스터나 BIOS 인터페이스 등을 통해 접근하는 장치 드라이버 등에 의해 제공되어 한계를 드러냈다. 또한 BIOS 구현도 복잡하여 OS와의 충돌도 잦았다.

2005년 현재, 이러한 문제로 인해 APM은 ACPI에 그 지위를 넘겨주었다.

참조

[1] 간행물 NewsBit: Microsoft, Intel Develop Power Standard Intel Corporation 1992-03-01
[2] 웹사이트 Advanced Power Management (APM) BIOS Interface Specification Revision 1.2 February 1996 Intel/Microsoft https://web.archive.[...] 2006-12-27
[3] 웹사이트 linux - What do different values of hard drive's Advanced Power Management feature (hdparm -B) affect, except spin-down? https://superuser.co[...]
[4] 웹사이트 linux - How much "Load_cycle_count" can my hard drive hypotethically sustain? https://superuser.co[...]
[5] 간행물 NewsBit: Microsoft, Intel Develop Power Standard Intel Corporation 1992-03-01



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com