| Hardware Abstraction Layer |
Article Index for Hardware |
Website Links For Hardware |
Information AboutHardware Abstraction Layer |
| CATEGORIES ABOUT HARDWARE ABSTRACTION LAYER | |
| operating system technology | |
|
The Windows NT -based operating systems have a HAL. This allows portability of the Windows NT kernel-mode code to a variety of processors, with different Memory Management Unit architectures, and a variety of systems with different I/O bus architectures; most of that code runs without change on those systems, when compiled for the Instruction Set for those systems. For example, the SGI Intel x86-based workstations were not IBM PC Compatible workstations, but thanks to the HAL, Windows NT was able to run on them. BSD , Mac OS X , Linux , Solaris , and some other portable operating systems also have a HAL, even if it's not explicitly designated as one. An "extreme" example of a HAL can be found in the System/38 and AS/400 architecture. Most compilers for those systems generate an abstract machine code for a virtual machine; the Licensed Internal Code, or LIC, for those systems translates this virtual machine code into native code for the processor on which it's running and executes the resulting native code. (The exceptions are compilers that generate the LIC itself; those compilers are not available outside IBM.) This was so successful that operating system software above the LIC layer, and application software, compiled on the original S/38 runs without modifications, and without recompilation, on the latest AS/400 systems, even though the underlying hardware having been changed dramatically; at least 3 different types of processors have been in use. Hardware abstraction layers are of an even lower level in computer languages than application programming interfaces ( API ) because they interact directly with Hardware instead of a system Kernel , therefore HALs require less processing time than APIs. Higher level languages often use HALs and APIs to communicate with lower level components. Operating systems having a defined HAL are easily portable across different hardware. This is especially important for Embedded System s that run on dozens of different Microcontrollers . EXTERNAL LINKS |
|
|