WinCE 6.0设备管理器

http://www.cnblogs.com/NorthCan/archive/2011/07/21/2112749.html

WinCE6设备管理器(Device Manager以下简称DM)的职能主要由三个Module完成。NK.exe去加载device.dll,device.dll加载devmgr.dll。最后活主要由devmgr.dll来干。有个疑问:那WinCE6的设备管理器是不是工作在内核态?由它所加载的驱动是不是也工作在内核态?某本WinCE书籍里讲到WinCE6的“用户态设备管理器”,我有点疑虑。

  DM负责设备驱动的加载,初始化以及卸载。DM将驱动程序的导出接口进行封装,对应用层提供系统API接口。DM可以在设备发生某特定事件时向应用程序发出通知。DM负责管理设备使用的内存和IO端口等资源。

  系统启动之后,首先进行DM初始化,DM加载busenum.dll(称为总线枚举器,以下简称BE),BE负责加载和初始化注册表键BuiltIn下各个子键所描述的驱动。

  [HKEY_LOCAL_MACHINE\Drivers\BuiltIn]

  "Dll"="BusEnum.dll"

  BE首先枚举BuiltIn下的各个子键,找到Dll键值,也就是驱动的DLL文件名。然后调用ActivateDeviceEx函数加载该DLL。之后在[HKEY_LOCAL_MACHINE\Drivers\Active]下为加载成功的驱动创建一个子键,写入一些信息。BE调用驱动导出的XXX_Init,进行一些驱动的初始化操作,如映射IO和一些寄存器等。

  BuiltIn子键下的驱动信息:

  加载成功的一个串口驱动:

    除了打印机和显示设备,HID设备,以及触摸屏等驱动由GWES管理之外,DM为WinCE操作系统掌管着其近乎所有的设备驱动。劳苦功高。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值