Don't miss an insight. Subscribe to Techopedia for free.

Subscribe
Advertisements

Hardware Abstraction Layer

What Does Hardware Abstraction Layer Mean?

A hardware abstraction layer (HAL) is a logical division of code that serves as an abstraction layer between a computer’s physical hardware and its software. It provides a device driver interface allowing a program to communicate with the hardware.

Advertisements

The main purpose of a HAL is to conceal different hardware architectures from the OS by providing a uniform interface to the system peripherals.

Techopedia Explains Hardware Abstraction Layer

A hardware abstraction layer is included in many OSs to avoid modifying the OS kernel to run the program on computers with varying hardware architecture. A PC may include the HAL in the OS kernel or in the form of device drivers that provide a consistent interface for applications to interact with the hardware peripherals.

The HAL provides the following benefits:

  • Allowing applications to extract as much performance out of the hardware devices as possible
  • Enabling the OS to perform regardless of the hardware architecture
  • Enabling device drivers to provide direct access to each hardware device, which allows programs to be device-independent
  • Allowing software programs to communicate with the hardware devices at a general level
  • Facilitating portability

Some of the OSs that feature HALs include the Mac OS, Linux, DOS, Solaris, BSD, Windows NT, Windows 2000 and IBM’s AS/400.

Advertisements

Related Terms