38、其它设备驱动

简介: 关于RS-232,485等系列的驱动编写,类似于USB等,见[1]。 摄像头驱动程序 WDM摄像头驱动程序分两部分,一部分是类驱动(Class Driver)程序,由MS提供,提供了标准接口,一部分是小驱动(Mini Driver)程序,用户编写。

    关于RS-232,485等系列的驱动编写,类似于USB等,见[1]<?xml:namespace prefix = o />

摄像头驱动程序

WDM摄像头驱动程序分两部分,一部分是类驱动(Class Driver)程序,由MS提供,提供了标准接口,一部分是小驱动(Mini Driver)程序,用户编写。

WDM中,Mini Driver首先将自己注册给Class DriverClass Driver拥有设备对象,而Mini Driver不用创建设备对象,利用Class Driver中的设备对象进行系统调用。

流设备的类驱动主要是控制请求,通过调用小驱动的适配器来访问具体的硬件。在流设备的类驱动与小驱动都初始化,小驱动需要等待类驱动来调用。类驱动用stream request blockSRB)向小驱动发送标准的请求,小驱动通过解析SRB后回答类驱动的请求。SRB可传送命令和数据。

类驱动的目标是与OS交互,包括同步,提供标准接口。小驱动由类驱动调用,负责硬件相关的操作。用户编写小驱动时会向类驱动注册一些回调函数,类驱动作为主程序会有适当的时机调用这些回调函数。

    关于小驱动的流控制流程及示例,可以见[1].

[1] Windows驱动开发详解,张帆

目录
相关文章
|
Windows
23、Windows派遣函数(1)-Windows驱动开发详解笔记,IRP
驱动程序的主要功能是负责处理I/O请求,其中大部分I/O请求是在派遣函数中处理的。用户模式下所有对驱动程序的I/O请求,全部由操作系统转化为一个叫做IRP的数据结构,不同的IRP数据会被“派遣”到不同的派遣函数(Dispatch Function)中。
1002 0
|
MySQL 关系型数据库
mysql函数
GROUP_CONCAT(exp) 需与group by语句在一起使用  SELECT username,GROUP_CONCAT(address) FROM pinjie GROUP BY username; SELECT username,GROUP_CONCAT(address separat...
1035 0
|
PHP Windows 数据安全/隐私保护
41、过滤驱动程序
    过滤驱动程序可以修改已有驱动的功能,也可以对数据进行过滤加密。WDM驱动需要通过注册表记录指定加裁的过滤驱动,OS会读取这些值完成加载,其可以是高层过滤,也可以是低层过滤。而NT较为灵活,不用设置注册表,直接在内存中寻找设备对象,然后自行创建过滤驱动并将自己附加在这个驱动之上。
1485 0
|
PHP Windows
32、即插即用
即插即用  1、即插即用(IRP_MJ_PNP)功能能够通过操作系统协调自动分配设备上的资源,如中断号,I/O地址,DMA资源,设备物理内存等。  WDM框架程序是分层驱动,WDM处于分层的高端,而总线驱动程序处于分层的低端。
1212 0
|
PHP Windows 数据格式
33、WDM驱动程序框架
在WDM程序中,创建设备等功能都被转移到AddDevice例程中。AddDevice是WDM驱动与老式NT式驱动的重要区别。 当有设备插入电脑后,系统总线驱动(根总线)会枚举到有新设备被插入;这时会通知PNP管理器寻找需要加载的设备驱动。
1110 0
|
PHP
31、分层驱动程序
把功能复杂的驱动分解成多个简单的驱动。多个分层驱动程序形成一个设备堆栈,IRP请求首先发送到设备堆栈的顶层,然后以次穿越每层的设备堆栈,最终完成IRP的请求。 1、相关概念 分层驱动是指两个或两个以上的驱动程序,他们分别创建设备对象,并且形成一个由高到低的设备对象栈。
733 0
|
安全 分布式数据库 API
6、Windows驱动开发技术详解笔记(2) 基本语法回顾
    1、字符串   Unicode 字符串有一个结构体定义如下: typedef struct _UNICODE_STRING { USHORT Length; // 字符串的长度(字节数) USHORT MaximumLength; // 字符串缓冲区的长度(字节数) PWSTR Buffer; // 字符串缓冲区 } UNICODE_STRING, *PUNICODE_STRING; 需要注意的是,当我们定义了一个UNICODE_STRING 变量之后,它的Buffer 域还没有分配空间,因此我们不能直接赋值,好的做法是使用微软提供的Rtl 系列函数。
1178 0
|
Windows
5、Windows驱动开发技术详解笔记(1) 入门基础-驱动程序结构
NT式 1、Driver.h头文件中包含了开发NT式驱动所需要的NTDDK.h,此外还定义了几个标志来指明函数和变量分配在分页内存还是非分页内存中。Windows驱动程序的入口函数是DriverEntry函数。
1339 0
|
8天前
|
人工智能 运维 安全
|
6天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!