USB驱动程序的加载(二)
来源:互联网 发布:java webservice xml 编辑:程序博客网 时间:2024/05/13 02:49
---------------------
| 应用程序 |
---------------------
|usb client driver | (层一)
---------------------
| usbd.dll | (层二)
---------------------
| ohci.dll | (层三)
---------------------
wince的USB驱动分为三层,如上图所示.从上到下,姑且将其称为层一,层二,层三。层一通过gc_usbFuncs来调用层二所提供的功能,而层二通过gc_hcdFuncs来调用层三实现的功能,而应用程序则与层一打交道。
HCD初始化时,会创建一个线程,CHub::HubStatusChangeThead().在此线程中,会监视USB口的状态,如果有设备插入,则有如下的调用步骤:
AttachDevice()->CFunction::EnterOperationalState()->HcdDeviceAttached()->LoadDeviceDrivers()->LoadUsbClientDriver()->LoadGroupDriver()->LoadRegisteredClientDriver().
CDevice::AttachDevie()处理设备的初始化,如读设备描述符,配置地址,加载Client Driver等。
在LoadRegisteredClientDriver()内,会根据不同的Class,来调用相应的UsbDeviceAttach().而它的第一个参数就是gc_usbFuncs.在IssueVendorTransfer()之类的函数中,有一参数LPCUSB_FUNCS,该指针就是指向gc_usbFuncs.
http://www.cnblogs.com/cdfyanghua/archive/2008/05/20/1203556.html
- USB驱动程序的加载(二)
- USB驱动程序的加载(二)
- USB驱动程序的加载
- USB驱动程序的加载(一)
- USB驱动程序的加载(一)
- USB设备驱动程序加载流程
- USB设备驱动程序加载流程
- USB设备驱动程序(二)
- USB设备驱动程序-USB Gadget Driver(二)
- USB设备驱动程序-USB Gadget Driver(二)
- USB设备驱动程序-USB Gadget Driver(二)
- windows CE下的USB设备驱动程序分析(二)
- windows CE下的USB设备驱动程序分析(二)
- USB驱动程序的编写
- USB驱动程序(较详细)二
- 对USB驱动程序的理解
- 对USB驱动程序的理解
- 对USB驱动程序的理解
- C#时间格式大全(转)/时间函数大全
- 让程序在WINDOWS用户未登录的情况下运行
- 中国Linux程序员生存现状
- USB驱动程序的加载(一)
- 自动编号数值类型
- USB驱动程序的加载(二)
- 反射实现 AOP 动态代理模式(Spring AOP 的实现 原理)
- 一个不错的flex效果网站
- 终于将XMPP客户端框架搞出来了.
- HTTP长连接 及 数据分块
- Comet, 下一代反向AJAX(即服务器推送技术- Server-side push)
- 最新Android ADT, SDK, SDK_tool等官方下载说明(及时更新)
- 漏洞挖掘技术
- VS2008 安装失败解决方案