设备驱动程序

    咱们已经知道.用户或者应用程序是经过操做系统使用设备的,而操做系统并不直接操纵设备,操做系统经过管理设备的驭动程序来间接使用设备。
    设备驭动程序(Device Driver)是由生产设备厂家提供的,全部与设备相关的代码都放在设备驭动程序中。若是设备的类别差异很小.系统能够屏蔽其差异.使用同一个程序代码操纵这个设备。在计算机系统中,键盘、显示器、鼠标等都做为标准设备.操做系统使用标准的设备驱动程序,为用户提供这些设备的使用。
    若是一个性能和原理彻底不一样的设备,例如激光打印机和针式打印机就是两种不一样类型的设备,系统须要分别为其创建驭动程序。实际上因为性能上的差别.为了使设备可以发挥最大效能.每每同一类不一样型号的设备都采用专门的驭动程序。
    每一个设备的电路中都有若干个接受命令的端口,而驱动程序就是向这些端口发出命令或者读取端口的状态,并把这些状态通知操做系统。例如咱们须要打印翰出.操做系统负贵把打印的要求和打印的数据传翰给打印机的驱动程序,或者启动打印驱动程序到某个区城中去读取打印命令或数据,操做系统剩下的工做获是查看打印状态:是否在打印、是否出现打印错误、是否打印结束等。整个打印工做由骆动程序和打印机交互完成。固然操做系统在处理打印前须要为打印任务进行数据组织。
    驱动程序向设备端口发出命令以后.操做系统有两种处理方法。一是等待设备完成操做.驭动程序阻寒本身.等待操做完成后解除阻塞。这种阻塞的目的是防止设备尚未执行完前一个操做而接受新的命令致使操做发生混乱。另外一种是不须要阻塞的状况,如鼠标操控屏幕的滚动,每每在很短期内就被执行完毕(显示器控制处理速度很快,但实际显示须要时间是大为受到显示器自己的扫描速度限制).所以系统能够不需耍阻塞,直接再继续对其进行进一步的操做。
    操做系统须要检查设备驭动程序的工做状态以决定采起何种处理。若是一切正常,则能够进行新的进程.如打印多个任务时.完成了一个打印后启动排在打印队列中的下一个新的打印进程。若是发现有问题则须要判断问题的性质,并进行相应的处理,如告诉用户不能打印的缘由是打印机缺纸,或者打印机塞纸致使打印机发生故障。
蜂王浆的反作用
html

相关文章
相关标签/搜索