Nota: Este artigo é sobre um subsistema dos sistemas operacionais semelhantes ao UNIX. Para o conceito geral e os HALs do kernel do Windows NT, veja Camada de abstração de hardware.

Hardware Abstraction Layer ou Hardware Annotation Library (HAL), em português Camada de Abstração de Hardware ou Biblioteca de Anotação de Hardware, é um subsistema de software para sistemas operacionais do tipo UNIX que fornece abstração de hardware.

HAL
Plataforma UNIX
Versão final 0.5.14[1] (30 de novembro de 2009; há 14 anos)
Sistema operacional Linux, FreeBSD, NetBSD, OpenSolaris, Solaris
Gênero(s) Software de sistema
Licença GNU General Public License e Academic Free License
Estado do desenvolvimento Descontinuado
Página oficial freedesktop.org/wiki/Software/hal/

O HAL hoje está obsoleto na maioria das distribuições Linux e no FreeBSD. Sua funcionalidade está sendo incorporada pelo udev no Linux desde 2008-2010 e pelo devd no FreeBSD. Anteriormente, o HAL foi construído no topo do udev.

Alguns outros SOs que não possuem um software alternativo como udev e devd, ainda usam o HAL.

O propósito da camada de abstração de hardware era permitir que aplicações desktop descobrissem e usassem o hardware do sistema hospedeiro por meio de uma API portável e abstrata, independentemente do tipo de hardware subjacente.[2]

O HAL para Linux foi originalmente concebido por Havoc Pennington. Ele se tornou o projeto freedesktop.org e foi uma parte chave da pilha de softwares dos ambientes desktop GNOME e KDE. Ele é um software livre com licença dual sob a GNU General Public License e Academic Free License.[3]

HAL não está relacionado com o conceito dos HALs do núcleo do Windows NT, que manipula algumas funcionalidades importantes específicas de plataforma dentro do núcleo, como roteamento de interrupções.

Veja também

editar

Referências

  1. «Index of /releases». Freedesktop.org. Consultado em 25 de outubro de 2018 
  2. Pennington, Havoc (10 de julho de 2003), Making Hardware Just Work 
  3. HAL source code license text, HAL is licensed to you under your choice of the Academic Free License version 2.1, or the GNU General Public License version 2 

Ligações externas

editar