In This Article
What is ACPI (Advanced Configuration and Power Interface)?
ACPI, or Advanced Configuration and Power Interface, refers to an abstract yet flexible interface for the hardware which allows integrating features for power management into a standard in a computer system.
- The ACPI is the power management specification through which the hardware status information is made available to the operating system.
- It typically helps the portable computer systems to manage power in a much better way by turning their peripherals on or off as required.
- The specification also allows turning a computer system on or off by means of an external device such as the mouse or the ‘wake up’ key.
- The standard combines the previous PnP BIOS with Advanced Power Management (APM) for improved power management systems.
- Launched with Windows 98 in 1996, this specification support is built into Windows and computer chipsets and BIOS was reformed to support it.
Understanding ACPI (Advanced Configuration and Power Interface)
ACPI is the typical way to integrate power management features through the different components of a computer system, including:
- The hardware
- The input/output systems
- The peripheral devices
- The application software
- The operating system
This particular interface helps the computer system to turn on a wide range of peripherals and ACPI compatible devices connected to it, including but not limited to the following:
The primary goal of the ACPI involves the current configuration and power standards of the hardware devices, with specific focus on three key areas, such as:
- Examining them
- Consolidating them
- Enhancing them
From a technological point of view, this interface allows the computer to activate the peripherals to activate the computer system, and vice versa.
For example, when you insert a disc into the CD-ROM, it would automatically activate the display and the sound system.
Another significant feature of it is that, when the computer goes into hibernation or in a deep sleep mode, the contents of the Random Access Memory (RAM) are copied to an image file. This file is stored on the hard drive.
When the system is turned back on, the image file is loaded again. This eliminates the need to reboot the computer every time and open the applications you were working on.
The ACPI specification was launched for the first time in December 1996 as a platform-independent interface created for:
- Hardware discovery
- Monitoring their power consumption
- Configuring them for better power organization
Initially designed by Intel, Microsoft, and Toshiba, HP and Phoenix also accompanied them later.
As a result, over time, the standard was improved even further, and today the ACPI usually has a much larger scope which involves different aspects such as:
- Power management
- Thermal management
- Runtime configuration of hardware as well as the system
- Reliability Accessibility and Serviceability, or RAS
- Hardware error handling
The new standards are better than the earlier ones, offering a crossover from them to support all ACPI-compliant hardware fully.
These standards substitute the Plug and Play (PnP) BIOS and multiprocessor specification to offer power to Operating System Power Management (OSPM).
With proper support from the operating system, then ACPI offers the following possibilities:
- Users can stipulate a time to turn a device on or off.
- Notebook computer users can stipulate low level power usage when they see a low-battery warning. This will make less important apps inactive and allow the current apps to run.
- The operating system can reduce the clock speed if the app does not need full processor power.
- Peripheral devices can be made inactive when not needed by the operating system to reduce power consumption by the devices and the motherboard.
- The computer system goes to standby mode if not in use, but the modem stays on to receive incoming mail and faxes.
- Plug and play devices are controlled by the ACPI as soon as they are plugged in.
There are some requisites to make the ACPI work. The most important one is that it should be supported by the following:
- The motherboard
- The operating system should be ACPI compatible
- The BIOS must have the ACPI software
You may choose one or more power schemes, and within them you can also control the power supplied to the individual peripheral devices.
The working process of the ACPI involves the following steps:
- Collecting information about power consumption by the components
- Sending it to the operating system
Based on the information received, the operating system dispenses power to the components as and when needed.
However, the ACPI may not always work as well as it should, due to some issues in two specific areas, such as:
- In the hardware
- In the software
These error signals are usually indicated by a red or blue screen along with a distinct error code.
Usually, in Windows 98, especially, a red screen denotes issues in the computer BIOS or hardware that results in an ACPI error.
In such situations, you will need to make sure that your system is equipped with the latest Basic Input Output System (BIOS) updates and hardware drivers.
On the other hand, a blue screen would indicate a software issue or any other hidden issue that may have caused an ACPI error.
In such situations, it is needed to make sure that the computer system has all the newest software patches for the operating system and programs.
What is the ACPI Specification?
The ACPI specification describes the structures of the interface as well as the mechanisms needed for designing power management directed by the operating system.
It also talks about the architectures for a more advanced configuration. In simple words, the ACPI specification is the key element of the OSPM.
For example, the ACPI 6.5 specification specifies that it will offer the following:
- CXL Memory support
- USB-C and USB4 support
- LoongArch processor architecture support
- Confidential Computing Event Log support
Different ACPI versions have different specifications and are applicable to all classes of computers, and are also adaptable to the new devices and IoT platforms.
The ACPI specification also includes four different power states, also referred to as modes or Global States, that control the supply of power to each component of the computer system. These are:
- The Working (G0) state
- The Sleeping (G1) state
- The Soft Off (G2) state
- The Mechanical Off (G3) state
There are different Sleep states as well within these Global states, such as:
Each of these states indicates different actions and their consequent effects on the power utilization and management. For example:
- If you do not touch any key or the mouse for a specific period of time, the monitor of the computer will power down, according to the Global state G0 with Sleep state S0 specification.
- If your computer system is put into hibernation mode, on the other hand, it indicates that the Global state G1 with Sleep state S4 specification is followed.
- The Global state G2 indicates the computer system is powered down and will be brought back to life by a method called Wake-on-LAN or by touching the soft power button typically located at the front of the computer case.
- The Global state G3 indicates that the computer system is powered down completely by using the main power button of the Power Supply Unit (PSU) of the computer.
ACPI Vs UEFI
- ACPI is used primarily by the device drivers and I/O manager for discovering devices and configuring them. On the other hand, Unified Extensible Firmware Interface (UEFI) offers support to the operating system loader.
- ACPI refers to the standard for hardware runtime configuration. UEFI, on the other hand, is a firmware standard.
- The scope of ACPI is much wider and involves runtime configuration of the system, thermal and power management and RAS support, whereas that of UEFI covers signing of drivers, secure boot operation, processor bindings, and module exchange.
- The interference with Linux is much more prevalent in ACPI as opposed to UEFI.
- ACPI will work quite well with U-Boot because it is not reliant on UEFI. On the other hand, UEFI will work just fine with an FDT since it is not tied to ACPI.
Ideally, to put it in simple words, the ACPI is a standard that defines how exactly different parts of the computer should correspond for power consumption.