ACPI

ACPI (Advanced Configuration and Power Interface).

고급 환경설정 및 전원 인터페이스.

하드웨어 감지, 메인보드 및 장치 구성, 전원 관리를 담당하는 일반적인 인터페이스를 정의한다. HP, 인텔, 마이크로소프트, 피닉스, 도시바가 공동으로 개발하였다.

현재는 버전 5.0a까지 나와있다.

배경

ACPI가 없던 예전에는 전원을 관리하기 위한 것으로 APM(Advanced Power Management)이 있었다. APM은 BIOS 인터럽트를 호출하는 방법으로 사용할 수 있었는데, 시간이 지나면서 전원 관리를 모두 BIOS가 담당하도록 하기는 어려워졌다. 애초에 BIOS에서 관리할 수 있는 상태 정보는 비교적 적었다[1]. 더군다나 BIOS 코드가 32비트 또는 64비트 코드가 아닌 16비트 코드라는 점을 감안해보면 (EFI는 제외) 더욱 좋지 못한 상태였다[2].

더군다나 몇몇 BIOS에는 버그가 있어 APM이 제대로 동작하지 않는 경우도 있었다 (...).

이러한 배경으로 ACPI가 탄생하게 되었으며, APM, MP Spec, PNPBIOS API 등등은 모두 ACPI에 흡수되었다. APM의 경우 반 정도는 이미 죽은 듯 하고, MP Spec도 마찬가지이다. 지원되기는 하나 ACPI를 사용하는 것에 비하여 정확한 결과를 얻는다고 할 수 없다.

현재 대부분의 운영 체제가 ACPI를 지원하고 있기에, 기존의 전원 관리와 연관된 것들은 더욱 빠르게 버려질 (...) 것으로 보인다.
  1. 부팅 후에 (BIOS가 대부분의 할일을 끝내고 운영 체제가 실행중일 때) 실질적으로 전원을 관리하는 주체는 운영 체제이지, BIOS가 아니기 때문
  2. 일시적으로 Real Mode로 돌아가서 호출하거나, 또는 V86 Mode를 사용해야만 했다