WindowCE驱动程序.ppt

上传人:sh****n 文档编号:6568910 上传时间:2020-02-29 格式:PPT 页数:22 大小:336.50KB
返回 下载 相关 举报
WindowCE驱动程序.ppt_第1页
第1页 / 共22页
WindowCE驱动程序.ppt_第2页
第2页 / 共22页
WindowCE驱动程序.ppt_第3页
第3页 / 共22页
点击查看更多>>
资源描述
WindowsCE驱动程序 WindowsCE驱动程序 WindowsCE驱动程序模型WindowsCE驱动程序的宿主程序WindowsCE驱动程序的类型WindowsCE驱动程序的分类示例驱动程序的代码 WindowsCE驱动程序模型 桌面Windows驱动程序模型操作系统在启动后对硬件进行延迟加载 但依然把驱动程序加载到操作系统的内核空间中 驱动程序工作在系统的地址空间内 实现了驱动的动态加载 桌面Windows驱动程序最早采用VxD 已废弃 从Windows2000开始采用WDM WindowsDriverModel 模型 驱动程序调用DDK Vista以及以后的版本采用WDF WindowsDriverFounation 是对WDM的建模与封装 但隐藏了更多的细节 但降低了开发难度 WindowsCE驱动程序模型 桌面Windows驱动程序模型操作系统在启动后对硬件进行延迟加载 但依然把驱动程序加载到操作系统的内核空间中 驱动程序工作在系统的地址空间内 实现了驱动的动态加载 桌面Windows驱动程序最早采用VxD 已废弃 从Windows2000开始采用WDM WindowsDriverModel 模型 驱动程序调用DDK Vista以及以后的版本采用WDF WindowsDriverFounation 是对WDM的建模与封装 但隐藏了更多的细节 但降低了开发难度 WindowsCE驱动程序模型 什么是设备驱动程序设备驱动程序是与硬件设备进行信息交互的系统程序 应用程序通过操作系统提供的驱动程序与硬件设备交互 但应用程序与硬件设备无关 对于每一款硬件设备 都有其对应的设备驱动程序 设备驱动程序是操作系统与硬件交互手段 是连接硬件与操作系统之间的桥梁 驱动程序与硬件的标准化接口由操作系统定义 应用程序将设备当作文件进行访问 通过系统调用与硬件交互 WindowsCE驱动程序模型 何时编写设备驱动程序 操作系统没有内置支持的硬件 扩展已有的驱动能力 提供软件层面的服务 编写驱动程序的要素要了解驱动程序针对的硬件工作特性 了解目标操作系统下驱动的工作机制 了解驱动程序的模型 WindowsCE驱动程序模型 设备驱动程序控制硬件 通过端口操作 对于某些硬件是不需要驱动的CPU内存储器 WinCE驱动分类本地设备驱动流接口设备驱动可通过WinCE提供的内建驱动源代码 如触摸屏驱动 显示驱动 鼠标及键盘驱动等 来学习与开发驱动程序 WindowsCE驱动程序模型 WindowsCE驱动程序模型在WindowsCE下 所有的驱动程序都以用户态下的DLL文件形式存在 编写WindowsCE驱动程序用到的方法及工具与编写其他任何一个普通的DLL一样 WindowsCE驱动开发可以使用PlatformBuilder或者VisualStudio2005以上版本开发 对于WinCE6 0 PlatformBuilder最为一个插件被集成到VS2005中 VS2005可以进行系统定制开发以及应用程序开发 与所有的Win32DLL一样 WindowsCE驱动程序DLL中的代码被一些进程动态加载到地址空间 运行在用户态下 WindowsCE驱动程序模型 WindowsCE驱动程序作为用户态的DLL来实现的优点 给操作系统和驱动程序带来了很大的灵活性 操作系统可在运行时动态地加载所需要的驱动程序 可轻松实现外设的即插即用 Plug Play 驱动程序放在用户态而不是核心态来实现 也增强了系统的稳定性 驱动程序的崩溃不会影响到操作系统内核 驱动程序放在用户态下可给驱动开发人员提供便利 WindowsCE驱动程序的宿主 如果要运行DLL中的代码 那么必须先有一个EXE进程 把该DLL加载道自己的地址空间内 然后才可执行DLL中的代码 WindowsCE的驱动程序也必须被其他EXE 宿主加载Device exe又称做设备管理器 负责加载和管理WindowsCE下绝大多数的设备驱动程序 GWES exe负责加载一些与图形界面相关的I O设备驱动 FileSys exe在系统中负责管理WindowsCE中的对象存储和文件系统 负责加载所有的文件系统驱动程序 WindowsCE驱动程序的类型 WindowsCE驱动程序的类型单层驱动程序分层驱动程序 单层驱动程序 单层驱动程序 就是所有的驱动程序 包括中断处理 I O操作及硬件控制等都放在了一起 DDI接口 DeviceDriverInterface 单层驱动程序提供的接口 是操作系统与驱动程序交互的接口协议 优点 代码不作分层处理 驱动程序的代码相对紧凑 选用单层驱动程序会提高驱动的性能 对于一些较简单的硬件设备驱动程序 使用单层驱动程序模型 可更加清晰明了 分层驱动程序 分层驱动程序把驱动程序的代码分为两层 模型设备驱动 ModelDeviceDriver MDD 包含某一类型的驱动程序所通用的代码 MDD层一般以库文件形式存在 平台相关驱动 PlatDependenceDriver PDD 包含特定的硬件或平台专用的代码 分层驱动程序 MDD和PDD之间还需要一个接口协议 这样 在分层驱动程序中 就有两类接口函数在操作系统与MDD之间的DDI DeviceDriverInterface MDD和PDD之间的DDSI DeviceDriverServiceproviderInterface 操作系统通过DDI函数访问内建驱动的MDD层 MDD层以库形式存在 向下调用的DDSI函数形式固定 但内容为空 需要PDD层实现 PDD层以代码形式存在 需实现相应的DDSI函数内容 分层驱动程序 MDD具有下列特征 包含给定类型的所有驱动程序所共有的代码 调用PDD函数以访问硬件 链接到PDD层 并且定义MDD期望在该层中调用的设备驱动程序服务提供程序接口 DDSI 函数 向操作系统 OS 公开设备驱动程序接口 DDI 函数 OS的其他部分可以调用这些函数 处理中断处理 可供开发人员重用 可以链接到多个PDD 通常不需要进行更改 如果进行了更改 则在将驱动程序迁移到将来的版本时可能会遇到麻烦 包含任何中断服务线程 IST 分层驱动程序 PDD具有下列特征 由硬件平台特有的代码组成 对于不同的硬件产品或标准 有不同的实现 只能与某一类MDD协同工作 实现MDD所需要的DDSI函数 分层驱动程序 优点驱动程序分层带来了一定的灵活性 使驱动程序的编写更为清晰 简单 驱动程序的移植也会变得相对简单 只需对PDD层的代码进行修改 缺点分层后 MDD层对PDD层的函数调用会给驱动程序带来额外的性能开销 WindowsCE驱动程序的分类 WindowsCE整体上将设备驱动分为三种 内置驱动总线驱动流接口驱动 内置驱动 硬件所必须的驱动程序 这些驱动程序通常由设计OEM厂商进行设计 如 键盘 触摸屏 音频设备 可能不支持一般的驱动接口 也有可能带有扩展的接口或者完全提供一个用户自定义的接口 内置驱动通常需要针对具体的操作系统进行小幅改动 总线驱动 管理系统总线如PCI总线等 负责处理总线上硬件的询问 以及资源的分配 同时也请求设备管理器为总线上的硬件安装适当驱动程序 驱动分类 详细 AudioDriversBatteryDriversBlockDriversBluetoothHCITransportDriverDirect3DDeviceDriverInterfaceDirectDrawDisplayDriversDisplayDriversDVD VideoRendererIEEE1394DriversKeyboardDriversNotificationLEDDriversParallelPortDriversPCCardDriversPrinterDriversSerialPortDriversSmartCardDriversStreamInterfaceDriversTouchScreenDriversUSBDrivers 参见文档 示例驱动程序的代码 PlatformBuilder中自带了大量的驱动程序代码 可以通过阅读这些代码来学习编写驱动程序 大部分驱动程序的代码放在目录 WINCEROOT Public Common OAK Drivers下 这些驱动程序都是与平台无关的 WINCEROOT Platform src drivers 中 这些驱动都是与平台相关的 从WindowsCE5 0开始 微软引入了Production QualityDeviceDriver的概念 主要是为了提高驱动程序代码的可靠性和稳定性
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!