The Windows NT hardware abstraction layer (HAL) refers to a layer of
software that deals directly with your computer hardware. Because the
HAL operates at a level between the hardware and the Windows NT
executive services, applications and device drivers need not be aware
of any hardware-specific information. The HAL provides routines that
enable a single device driver to support a device on different
hardware platforms, making device driver development much easier. It
hides hardware dependent details such as I/O interfaces, interrupt
controllers, and multiprocessor communication mechanisms. Applications
and device drivers are no longer allowed to deal with hardware
directly and must make calls to HAL routines to determine hardware
specific information. Thus, through the filter provided by the HAL,
different hardware configurations can be accessed in the same manner.
Microsoft Windows NT "Resource Guide"
"Inside Windows NT," Helen Custer, Microsoft Press, 1993