转自:http://blog.sina.com.cn/s/blog_62714d6a0100m3ox.html
驱动模型图:
驱动程序的模型
比较:WDM-----windows Driver Model(windows设备驱动模型)
PC驱动程序模型------ 至少两个驱动程序:
1、功能驱动程序,也就是硬件设备驱动程序,它了解硬件细节,负责初始化I/O操作
2、总线驱动程序,负责管理与计算机的连接。
wince驱动程序模型------ 至少两个驱动程序:
1、本机设备驱动程序模型
作用描述:向键盘、触摸屏、电源等驱动 这些是机器运行的基础,和OS结合紧密,所以微软采
用定制接口的方式来支持内部设备驱动程序,而大多数开发人员不需要接触
2、流接口驱动程序模型
作用描述:与流接口有关的驱动程序。在wince中,流接口是一组操作系统定义的函数,
是对具体“数据流”属性设备的一中抽象。通常,流接口驱动程序会实现这些接口
供设备管理器调用。应用程序如果要访问流接口驱动程序,
一般需要通过文件系统进行访问 ???
重要的DLL文件:
在wince中,无论是哪种驱动程序模型,驱动程序的物理表现均为一个DLL(动态链接库文件)。
动态链接库一直就是windows操作系统的基础,wince也不例外,DLL的核心部分是三个DLL文件:
Kerner.dll 作用:管理内存、进程以及线程
filesys.dll 负责管理wince中的对象存储和文件系统。如FAT文件系统驱动、CDFS文件系统驱动等。
device.dll 作用:设备管理器,负责加载和管理绝大多数的设备驱动:网卡、电池、声卡、
串口、NLED、USB设备驱动、PCMCIA驱动等
对比:在PC机上的windows操作系统的动态链接库也是有三个核心DLL文件组成:
Kerner32.dll管理内存、进程以及线程
User32.dll 执行与用户界面相关的任务,如创建窗口和发送消息
GDI32.dll绘制图像和显示文字的函数