- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【Word版本下载可任意编辑】 PAGE 1 - / NUMPAGES 1 详解WinCE驱动程序的分类 WinCE系统在驱动设计上有一个很方便的功能,就是原始设备制造商(OEMs)和独立硬件开发商(IHVs)可以自主开发设备驱动程序来支持他们的硬件。因此,在动手开展触摸屏驱动程序开发之前,深入了解WinCE系统驱动方式是非常有必要的。 驱动程序是介于操作系统和设备之间的一个代码层,它的主要作用是为操作系统提供一个接口,以操作不同的硬件,包括物理的和虚拟的设备。虽然驱动程序有很多种,但从编程的角度来看,无非是一个固定的框架中添加相应的代码。这里的框架指的是一个接口,面向操作系统。 驱动程序的分类,从不同的角度有不同的分法。拿串口驱动来说,可以说它是一个分层驱动,也可以说它是一个流驱动。 先说本地驱动(Native Drivers)和流驱动(Stream Drivers)。WinCE下的驱动都可以归类到这两个里面,二者必居其一。这是从驱动程序提供应操作系统的接口来区分的。流驱动为操作系统提供流接口函数,如XXX_Init()、XXX_Open()、XXX_Read()、XXX_Write()、XXX_Close()等。这类的驱动由Device Manager来管理,它调用ActivateDeviceEx()函数来加载流驱动。ActivateDeviceEx()的参数是注册表中相应的键,用来设定加载流驱动的属性,如Index、Order、Prefix等等。流驱动的注册表配置信息一般存放在下。流驱动加载成功后,应用程序通过调用CreateFile()、ReadFile()、WirteFile()等来访问流驱动的设备。流驱动可以动态管理,驱动调试助手就是用来帮助调试这一类驱动的。 与流驱动相反,本地驱动提供应操作系统的不是标准的流接口,而是事先约定好的特定接口。不同的设备,接口也不一样。WinCE中,比较常见的本地驱动有LCD显示驱动、触摸屏驱动、鼠标、键盘驱动以及打印机驱动等。本地驱动主要是人机界面相关的驱动。它们是由GWES管理,在系统启动时加载。他们在注册表中也有各自相应的配置信息。如键鼠的注册表配置如下: Layout File=kbdmouse.dll Layout Text=US PS2_AT=kbdmouse.dll Matrix=kbdmouse.dll 本地驱动由操作系统调用,应用程序不能访问。对于这类驱动,驱动调试助手是无能为力的,只能开展编译、、验证。 WinCE驱动中经常会听到MDD(Model Device Driver)和PDD(Platform Dependent Driver)的概念,这是从驱动代码实现的构造来区分的。在Win CE系统中触摸屏驱动是一种分层驱动。WinCE的驱动可以是单层的,也可以是PDD+MDD。这没有硬性规定,一个驱动程序可以采用分层构造,也可以采用单层构造。一般来说,单层构造的驱动执行效率更高,而分层构造的驱动方便代码维护和移植。拿串口驱动来说,完全可以采用单层构造。 WinCE 6.0引入了内核态驱动和用户态驱动的概念。在WinCE5.0及先前的版本中,驱开工作在用户态。从代码方面看,内核态驱动和用户态驱动没太大差异。如果驱动中没有采用什么特别的技术,内核态驱动和用户态驱动甚至是二进制兼容的。内核态驱动被加载到内核空间,用户态驱动被加载到特定的用户进程空间中。从执行效率看,内核态的驱动效率比用户态的驱动高。从稳定性方面考虑,用户态的驱动不会对系统产生严重的影响,而内核态的驱动相比照较危险。 从驱动加载的时间可分为两种:系统启动时加载和需要时加载。一般来说本地驱动都是在启动时加载的,所以这里说的主要是流驱动。如果想要驱动在系统启动时加载,只需将它的注册表配置信息放到下,如,系统启动时,Device Manager会自动加载它。这里说一下USB设备的驱动加载,如USB摄像头驱动,它也属于需要时加载的驱动。从驱动的接口来看,它属于流驱动,但相对普通的流驱动,它增加了几个函数:USBDeviceAttach()、USBInstallDriver()、USBUnInstallDriver()等。USB摄像头驱动的加载在USBDeviceAttach()中完成。所以,它无须,也不能,用驱动调试助手加载。需要时加载的驱动还有一个作用,在无法修改系统的情况下,应用程序中动态加载该驱动,以完成对硬件的操作。 综上所述,WinCE驱动的分类,主要有以下几种分法: 按驱动接口分,可分为本地驱动和流驱动; 按驱动构
您可能关注的文档
最近下载
- 宾语从句讲义.docx VIP
- 机电一体化技术专业职业生涯规划书发展报告大一全国大学生职业规划大赛模板范文2025字.pdf VIP
- 2022大型跨流域水电集控中心设计方案.doc
- 天津七一二通信广播股份有限公司2018年年度股.PDF VIP
- F 我心爱的意中人 我爱恋的人 我所迷恋的人原版正谱子五线谱声乐钢琴伴奏谱乐谱曲谱弹唱谱高清正版.pdf VIP
- 国际货运代理课程标准.doc
- 降E正谱被禁止的音乐.pdf VIP
- 大学生应征入伍学费补偿申请表.doc VIP
- 智能养老社区养老产业发展模式创新研究报告.docx
- 人教版化学九年级上册第六单元《碳和碳的氧化物》大单元作业设计.pdf VIP
有哪些信誉好的足球投注网站
文档评论(0)