Hardware Abstraction Layer
HAL provides an abstract view on hardware. This abstraction layer is simply an interface that makes it possible to add support for new devices and new ways of connecting devices to the computer, without modifying every application that uses the device.
- It maintains a list of devices that currently exist, and can provide information about those upon request.
It provides an infrastructure to configure [any] device. (It was used by Xorg too).
Read HAL specifications: Introduction for more information.
lshal(1) -- list HAL devices.
hal-find-by-property(1) -- find device objects by property matching.
hal-find-by-capability(1) -- find device objects by capability matching.
gnome-device-manager, which is a Gnome tool to view the devices on the local machine: