Hardware Abstraction Layer
跳到导航
跳到搜索
硬件抽象层
“硬件抽象层”或HAL(Hardware Abstraction Layer)是对实际硬件的抽象, 以便即使底层硬件改变或同一设备类别的不同型号在它们的实现和实际接口上有很大变化,也向软件呈现一致的接口。 HAL允许程序员以一致且基本上与型号/品牌无关的方式编写设备驱动程序,它甚至可能将内核与许多已安装的硬件隔离开来。 使用HAL的操作系统很少(几乎没有)允许用户级软件直接与硬件设备接口,通常也不允许设备驱动程序(通常以特权运行)这样做。 设备驱动接口(Device Driver Interfaces)是硬件抽象层的重要组成部分之一。
用途示例
- 收银机程序想要读取收银机刚刚处理的商品名称。
- 它调用收银机驱动来执行此操作,而收银机驱动调用设备驱动接口。
- 然后,操作系统的设备驱动接口,例如,它使用PCI与收银机通信。
- 最后,设备驱动接口将收银机中的产品名称传递给驱动,驱动再将产品名称传递给程序。