驱动程序的分类

本文介绍了WinCE驱动程序的三种分类:内建驱动与可安装驱动,以及分层驱动和不分层驱动的概念。内建驱动与可安装驱动在加载方式上有所不同,而驱动程序可以采用单层或分层结构,以平衡执行效率和代码维护。微软提供了驱动源代码,包括公共部分和平台相关的部分,供开发者使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.内建的驱动程序与可安装的驱动程序

按照驱动程序导出的接口不同,驱动程序可以分为本地设备驱动程序和流接口驱动程序。

内建驱动程序(Built-in Driver)有时也称为本地驱动程序(Native Device Driver),它们被静态地链接到GWES

可安装的驱动程序(Installable Driver)也称为流设备驱动程序(Streams Device Driver)们是由设备管理器(device.exe)动态加载的用户模式的DLL

只有极少数驱动是混合设备驱动(Hybrid Driver)PC Card Socket是混合设备驱动的一个典型例子。

2.分层的驱动程序和不分层的驱动程序

WinCE的驱动可以是单层的,也可以是PDD+MDD。这没有硬性规定,一个驱动程序可以采用分层结构,也可以采用单层结构。一般来说,单层结构的驱动执行效率更高,而分层结构的驱动方便代码维护和移植。拿串口驱动来说,完全可以采用单层结构。而把它分为PDDMDD,作为一般的开发者,我们只需实现PDD层就可以了,MDD层由微软实现。这样,驱动开发的工作量少很多,而代码的可靠性则有了更好的保证。至于采用哪一种结构的驱动,主要看不同的需求。

3.驱动程序源代码

微软在Platform Builder中为用户提供了绝大多数类型设备驱动程序的源代码,这些源代码由两部分组成:一部分是独立于平台的源代码,位于%_WINCEROOT%/PUBLIC|Common/OAK/DRIVERS文件夹下,另一部分是与平台相关的代码,位于%_WINCEROOT%/PLATFORM下的BSP内。这两部分代码进行链接构成最终的设备驱动程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值