'\" te .\" Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved. .TH hal 5 "30 Nov 2011" "SunOS 5.11" "Standards, Environments, and Macros" .SH NAME hal \- overview of hardware abstraction layer .SH DESCRIPTION .sp .LP The Hardware Abstraction Layer (HAL) provides a view of the various hardware attached to a system. This view is updated dynamically as hardware configuration changes by means of hotplug or other mechanisms. HAL represents a piece of hardware as a device object. A device object is identified by a unique identifer and carries a set of key/value pairs, referred to as device properties. Some properties are derived from the actual hardware, some are merged from device information files (\fB\&.fdi\fR files), and some are related to the actual device configuration. .sp .LP HAL provides an easy-to-use API through D-Bus. D-Bus is an IPC framework that, among other features, provides a system-wide message-bus that allows applications to talk to one another. Specifically, D-Bus provides asynchronous notification such that HAL can notify other peers on the message-bus when devices are added and removed, as well as when properties on a device are changing. .sp .LP In the Solaris operating system, HAL is supported by a daemon, \fBhald\fR(1M), and a set of utilities that enable the adding and removing of devices and the modification of their properties. .SH SEE ALSO .sp .LP \fBhald\fR(1M), \fBhal-device\fR(1M), \fBhal-fdi-validate\fR(1M), \fBhal-find\fR(1M), \fBhal-find-by-capability\fR(1M), \fBhal-find-by-property\fR(1M), \fBhal-get-property\fR(1M), \fBhal-set-property\fR(1M), \fBfdi\fR(4) .sp .LP http://freedesktop.org.