WDM不是通过驱动程序名称,而是通过一个128位的全局唯一标识符(GUID)实现驱动程序的识别。在应用程序与WDM驱动程序通信方面,系统为每一个用户请求打包形成一个I/O请求包(IRP)结构,并将其发送到驱动程序,并通过识别IRP中的PDO来区别是发送给哪一个设备的。内核通常通过发送IRP来运行驱动程序的代码。WDM驱动程序完全支...
而利用DDK进行基于WDM(Win32 Driver Model)驱动程序开发,使驱动程序的开发变成了一项比较简单的工作。 2 Win32驱动程序模型 USB设备驱动程序必须符合由Microsoft为Windows 98及其后版本所定义的Win32驱动程序模型(Win32 Driver Model,WDM)规格。这些驱动程序称为WDM驱动程序,扩展名为.sys。 WDM定义了一个基本模型,处理...
如果从头开发 USB 驱动,往往很难达到USB驱动的稳定性,所以建议在此驱动修改基础上进行USB驱动开发。 2、功能驱动与物理总线驱动 程序员不需要了解USB如何将请求化成数据包等细节,只需要指定何种管道,发送何种数据即可。 当功能驱动想向某个管道发出读写请求时,首先构造请求发给USB总线驱动。这种请求是标准的USB请求,称...
本文介绍了通用串行总线 2.0 规范第 9.1 节中规定的用于 USB 设备电源状态的 Windows 驱动程序模型 (WDM) 设备状态。 USB 设备电源状态(如通用串行总线 2.0 规范第 9.1 节所述)可分为三大类: 附后:设备已连接,但未完全通电。 通电:设备处于其中一种完全通电状态:默认、地址或配置。
前文所提及的WDM驱动程序开发方法,笔者都曾尝试过。个人认为用DriverStudio开发工具包来开发USB驱动程序行之有效。其中的Driver Wizard是创建WDM驱动程序框架的一个很好的工具,后文将介绍用它来创建USB设备驱动程序的基本框架。 1、搭建开发平台 由于利用 DriverStudio 开发WDM驱动程序在搭建开发平台的过程中对软件的安装...
USB WDM 设备驱动程序 DriverStudio 引言 随着微机技术水平的日益提高,传统的计算接口已经不能满足当前计算机高速发展的需求,计算机业界迫切需要新的通用型、高速总线接口。通用外设接口标准USB应运而生。USB,全称为通用串行总线(Universal Serial Bus),它是Compaq、IBM等PC大厂商联合开发的一种新型的、基于令牌的、高速...
1、.USB驱动程序的编写采用WDM 驱动程序。WDM 驱动程序是一些例程的集合,它们被动地存在,等待主机系统软件(PnP 管理器、I/O 管理器、电源管理器等)来调用或激活它们。具体驱动程序不同,其所包含的例程也不同。一个WDM 驱动程序的基本组成包括以下5个例程: (1)驱动程序入口例程:处理驱动程序的初始化。 (2)即...
通用串行总线(USB)设备的驱动 摘要:从问题的由来、类驱动程序、通信协议、描述符、驱动开发等对USB的驱动进行分析和讨论,提出USB设备使用操作系统嵌入的通用类驱动程序成为趋势。 关键词:USB 类驱动程序 人工接口设备(HID) Windows驱动程序模型(WDM) 最初设计USB(Universal Serial Bus)这种外设总线的目的之一就是为了...
19、SubmitUrb - Submits an URB (USB Request Block) to the system USB bus driver for processing提交一个URB(USB Request Block)给系统USB总线驱动程序去处理。 如果驱动程序提供了一个非空(non-NULL)的完成例程,那么两种FORM之一的调用者处于IRQL <= DISPATCH_LEVEL中断级别上。否则中断级别必须在PASSIVE_LEV...
USB驱动程序的编写采用WDM驱动程序。WDM驱动程序是一些例程的集合,它们被动地存在,等待主机系 统软件(PnP管理器、I/O管理器、电源管理器等)来调用或激活它们。具体驱动程序不同,其所包含 的例程也不同。一个WDM驱动程序的基本组成包括以下5个例程: (1)驱动程序入口例程:处理驱动程序的初始化。