Friday, February 22, 2008

HAL Hardware Abstraction Layer

A hardware abstraction layer (HAL) is embedded in software between the computer hardware and the operating system. HAL enables several different computer systems to access programs such as Window NT without having to write a separate operating system for each brand.

The hardware abstraction layers communicate directly with hardware devices such as motherboards. It serves as an interpreter for high level languages to enable them to interact with the lower level component hardware.

Abstraction layers are better visualized by graphics programs. They translate simple program commands into complex screen graphics. Another example of abstraction layers has to do with an older networking process called the OSI (Open Systems Interconnection) model. Seven abstraction layers make up the OSI model; Application, Presentation, Session, Transport, Network, Data Link, and Physical.

The application layer consists of the applications software which is what we use to initiate the communications process. The presentation layer will convert the data to code, compress the data, and encrypt the data. The session layer handles the information exchanges. The transport layer controls the flow and any errors that may occur. It can also retransmit segments that fail. The network layer receives the data from the transport layer with the sequence numbers identifying the segment data. It will address the data with Internet Protocol (IP) addresses, encapsulate the data, routes the data, and decapsulates data as it returns.

The data link layer allows data exchanges between devices. It converts the data into frames. The final layer in the process is the physical layer. This encodes the data into binary signals that are then transmitted to the receiving device.

We obviously do not see these steps as they occur but the next time you use email keep in mind that without hardware abstraction layers to handle the task required, the data would be meaningless.

No comments: