驱动的地位

对驱动的理解:

任何计算机系统的运行都是系统中软硬件相辅相成的结果,应用软件工程师需要看到是一个没有硬件的纯粹的软件世界,硬件必须被透明的呈现给他,这个关键的任务就有驱动设备来完成,

设备驱动是一种在应用程序和硬件设备之间通信的特殊程序,相当于硬件的接口,应用程序通过它识别硬件,通过向该接口发送、传达命令,对硬件进行操作。设备驱动对应用程序而言,透明化了硬件设备,存在于应用程序和实际设备之间的软件层,是硬件设备和应用软件之间的沟通纽带,应用软件只需要调用系统软件的应用编程接口,而不用详细的了解硬件设备的性能,参数等就可以让硬件去完成要求的工作。

并非任何一个计算机都需要运行操作系统,例如功能比较简单的计算机系统,用单任务构架完全可以很好的支持工作,并不需要多任务调度,文件系统,内存管理等复杂功能。这样的系统虽然不存在操作系统,但是设备驱动必须存在,在编写驱动的时候,需要直接操作寄存器,控制中断等。在没有操作系统的情况下,设备驱动的接口直接提交给应用软件工程师,应用软件没有跨越任何层次就可以直接访问设备驱动的接口,驱动包含的接口函数也与硬件的功能直接吻合。一般地说在无操作系统的时,整个计算机系统中的硬件资源、设备驱动和应用软件的关系如图所示:

无操作系统时,硬件,驱动,和应用软件的关系

在存在操作系统时,1无操作系统时的设备驱动的硬件操作仍然是必不可少的,也就是说在无操作系统时驱动所做的工作,在有操作系统时也是要做的。

2,还需要将设备驱动融入操作系统内核,应用程序是通过调用操作系统的API来实现对硬件的操作。所以设备驱动需要融入到内核中,为了实现这种融合,必须在所有的设备驱动中设计面向操作系统内核的接口。

当系统中存在操作系统时,设备驱动编程了链接硬件和内核的桥梁,操作系统的存在使得单一的“驱动硬件设备工作”变为操作系统与硬件交互的模块,它对外呈现为操作系统API,不在给应用软件工程师直接提供接口。

硬件,驱动,操作系统和应用程序的关系

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值