关于问题驱动程序的本质是什么?一共有 4 位热心网友为你解答:
【1】、来自网友【古海 2021】的最佳回答:
举个例子,有一群魔术师,能用激光笔在墙上画出很魔幻的图案,各类型的激光笔都能用来画。
不足的是,魔术师要使用的激光笔类型太多,有上百万种,而每种打开和配置方式到一个相同状态的方法又不同。
这时就有一个职业人出现,他能收集所有类型激光笔的打开,配置方式,这个职业人和所有生产激光笔的厂家对接,让厂家把各自的激光笔的打开和配置方式按固定格式在自己的登记本上登记。
有了职业人的出现,魔术师们使用什么激光笔,都不用跑去各个厂家问了,只要找职业人就可以。
另外魔术师们出工做画,以前还经常彼此抢工,搞的一个不服一个,这时,职业人说,以后出工,我帮你们安排吧,谁也别抢,我轮流安排,魔术师们觉的这个方法好,都同意了。
这个例子中,魔术师就是应用程式,而各个厂家对各自激光笔在职业人那里统一方式的登记,就是驱动程序,另外那个职业人对应的是什么?——就是操作系统!
【2】、来自网友【散居猎人】的最佳回答:
功能描述和具体实现方案的对接,方法声明和方法实现的关系。
比如打印机驱动,每个打印机,从功能看是一样的,无非是打印一个字符和横向移动换行回车等,可每个打印机厂家某型号打印机实现方法不同,操作指令也不同。有了打印机驱动程序后,我们操作打印机可用通用 SCL 语言就可以了。
如果没有打印机驱动程序,我们要打印,就要针对某个打印机编程实现。打印机繁花欲乱游人眼,左看右看还是花。
类似的,库函数也是如此。y=sin(x),具体 sin 是怎么算出来的,我们不用管但提供 sin 库函数的软件厂家却要考虑怎么更快地算出 sin 值,查表法以及泰勒级数法。
fuction add(a,b:integer):integer;
这是声明或描述,两个整数相加。
add=a+b;
这是实现,实现方法可以不同。比如,可以用汇编实现。
asm
pop eax
pop ebx
add eax,ebx
return
end;
驱动程序本质就是翻译,把普通话翻译成方言。
【3】、来自网友【三袋大菠萝】的最佳回答:
本质其实和一些软件平台的插件接口差不多。
你必须按某些平台规定的接口样式,实现某些功能。
事实是,先有操作系统对驱动层的设计,后有类似的软件平台。
相关软件平台可以参考 office,Adobe,visual studio.
给三方开发者丰富这个平台的可能性。
微软开发操作系统,不可能有能力满足所有硬件厂商的开发需求,这时候,预留接口规范,然第三方自己开发“插件”是最佳选择
【4】、来自网友【眉山吃瓜群众】的最佳回答:
本质上是应用程序接口-interface
以上就是关于问题【驱动程序的本质是什么?】的全部回答,希望能对大家有所帮助,内容收集于网络仅供参考,如要实行请慎重,任何后果与本站无关!