What is ACPICA?
ACPICA stands for the ACPI Component Architecture. This project was started in 1998 to enable the industry’s adoption of ACPI for laptops, desktops, and servers. The main barrier to adoption of ACPI has been the implementation of the AML interpreter for each OS. ACPICA provides an interpreter, as well a much of the required infrastructure to locate the ACPI tables, manage ACPI hardware and events, manage resource usage information, etc. The goal of ACPICA is not to enable any single OS, but to enable all OSs to use ACPI. The ACPICA code is written as a group of OS-independent modules. These modules expose interfaces that the OS uses, and also requires that basic OS-dependent functionality be implemented for each OS, such as memory management, synchronization, threading, etc.