What is the hardware abstraction layer (HAL)?

John Savill

November 27, 2005

1 Min Read
ITPro Today logo

A. One of the key design features of Windows is that it supports multiple hardware platforms without the need for complete different versions of the OS. This support is accomplished through the HAL, which is implemented via the kernel-mode hal.dll module. All Windows components access hardware via the HAL, and multiple HALs are available that are specific to different hardware platforms. The installed HAL is chosen when the OS is installed (hence, why you can't take a disk from one machine and run it in a machine of a different hardware platform).The available HALs are listed here:

   - Standard PC (non-ACPI) - Hal.dll    - MPS Uniprocessor PC - Halapic.dll    - MPS Multiprocessor PC - Halmps.dll    - Advanced Configuration and Power Interface (ACPI) PC - Halacpi.dll    - ACPI Uniprocessor PC - Halaacpi.dll    - ACPI Multiprocessor PC - Halmacpi.dll 

The installation process selects the correct HAL and copies it to the %systemroot%system32 folder as hal.dll. The last three HALs in the list are the most common.

About the Author(s)

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like