从内核的角度来看,驱动程序是一个设备的代表。当内核需要与某个设备交互时,它找到该设备的驱动程序,然后通过标准的接口调用驱动程序的相应函数,从而控制设备。内核不需要知道驱动程序如何工作,也不需要了解设备的细节。设备的细节由驱动程序掌握,驱动程序知道如何掌握一台具体的设备。
由于定义了内核与驱动程序间的接口,驱动程序的实现也变得非常统一,一个驱动程序就是利用硬件的特征对接口函数的一个实现。因此硬件厂商和第三方用户