Hardware Abstraction Layer: Difference between revisions

From OSDev.wiki
Jump to navigation Jump to search
[unchecked revision][unchecked revision]
Content added Content deleted
No edit summary
(→‎Hardware Abstraction Layer: I have edited this into what I consider better shape, it's probably nowhere near finished, though.)
Line 2: Line 2:


== Hardware Abstraction Layer ==
== Hardware Abstraction Layer ==

The Hardware Abstraction Layer (HAL) is a abstraction layer between the physical PC hardware and the software. HAL is a part of the operating system. It's task is to allow instructions from high level programming languages to communicate between the low-level components (e.g. directly hardware).
A "Hardware Abstraction Layer" or HAL is an abstraction of the actual hardware, so as to present a consistent interface to software even if the underlying hardware alters or different models of the same device class vary a great deal in their implementation and actual interface. A HAL allows programmers to write device drivers in a consistent and largely model / brand agnostic manner, it might even isolate the kernel from much of the installed hardware. Operating systems which make use of a HAL will rarely, if ever, permit user-level software to interface directly with hardware devices and usually will not allow device drivers (which frequently run with privileges) to do so either.

== Operating Systems that known to use a HAL ==

The most prominent example of HAL usage is probably the NT series of operating systems from Microsft; this includes everything from at least Windows NT 4.0 through Windows 2000, Windows XP, Windows Vista upto and including Windows 7.


== See Also ==
== See Also ==

Revision as of 19:22, 6 October 2010

This page is a stub.
You can help the wiki by accurately adding more contents to it.

Hardware Abstraction Layer

A "Hardware Abstraction Layer" or HAL is an abstraction of the actual hardware, so as to present a consistent interface to software even if the underlying hardware alters or different models of the same device class vary a great deal in their implementation and actual interface. A HAL allows programmers to write device drivers in a consistent and largely model / brand agnostic manner, it might even isolate the kernel from much of the installed hardware. Operating systems which make use of a HAL will rarely, if ever, permit user-level software to interface directly with hardware devices and usually will not allow device drivers (which frequently run with privileges) to do so either.

Operating Systems that known to use a HAL

The most prominent example of HAL usage is probably the NT series of operating systems from Microsft; this includes everything from at least Windows NT 4.0 through Windows 2000, Windows XP, Windows Vista upto and including Windows 7.

See Also