Hardwareabstraktionsschicht

Eine Hardwareabstraktionsschicht (englisch Hardware Abstraction Layer, HAL) ist eine Schicht eines Betriebssystems, die den Kernel und alle übrige Software von der Hardware isoliert.

Nur die Hardwareabstraktionsschicht kann auf Hardware zugreifen, alle andere Software kann es nur unter Vermittlung der Hardwareabstraktionsschicht.[1] Diese Abstraktion erleichtert es, das Betriebssystem auf unterschiedliche Prozessorarchitekturen anzupassen, weil nur ein Teil der Hardwareabstraktionsschicht geändert werden muss. Sie erleichtert es auch, Gerätetreiber zu programmieren, weil diese auf der Hardwareabstraktionsschicht aufsetzen.[2]

In Windows-Betriebssystemen befindet sich die HAL unter C:\Windows\system32\hal.dll.

Das Betriebssystem NetBSD, das für über 50 unterschiedliche Plattformen erhältlich ist, zeigt am deutlichsten das Potenzial des Konzepts auf.[3]

Die Firmware eines Rechners kann Aufgaben der Hardwareabstraktion übernehmen. Bei x86-Rechnern nennt man die Firmware üblicherweise BIOS. Modernere Betriebssysteme setzen allerdings nach dem Booten eigene Hardwaretreiber ein, bringen also eine eigene Hardwareabstraktionsschicht mit.

Siehe auch

Literatur

  • Abraham Silberschatz, Peter Bear Galvin, Greg Gagne: Operating System Concepts. Sixth Edition. 2002, ISBN 0-471-41743-2

Einzelnachweise

  1. Advanced RISC Computing Specification (PDF; 383 kB) MIPS Technologies. S. 23. Abgerufen am 26. Februar 2013.
  2. Windows NT Hardware Abstraction Layer (HAL). Microsoft. Abgerufen am 7. Mai 2009.
  3. Portability and supported hardware platforms. The NetBSD Foundation. Abgerufen am 12. Mai 2009.