基于WDF的驱动开发
基于WDF的驱动开发
WDF的开发需要遵循一定的规则,开发实现时需要考虑较多的细节,由于篇幅有限,笔者凭着自己的经验暂且稍做列举,后续将写一篇针对WDF驱动开发的文章。
安信接Windows驱动开发外包
PNP和电源管理(WDF已经帮忙封装了大部分的接口);
各种对象:驱动对象,设备对象,WDF对象,文件对象,队列对象;
驱动上下文:有时称为设备扩展,用于存储特定设备对象的相关信息的数据结构;
对象的释放:需要考虑不同性质对象释放的时机;
中断请求级别:处理不当易导致蓝屏;
分页与非分页内存;
同步锁:回调同步锁、框架等待锁、自旋锁、中断锁等;
日志跟踪记录: 调试的必备,可以采用 WPP(Windows软件追踪预处理器)或简单的 DebugPrint 输出
与应用程序的通讯:控制代码、IRQ,请求队列
基于WDF的驱动开发相关推荐
- 谈WDM与WDF (windows驱动开发)
转载自http://yinaiyun52.blog.163.com/blog/static/36251574200826112436776/ WDF驱动模型 如所周知,自Windows 2000开始, ...
- 树莓派基于Linux内核驱动开发
一.驱动认知 1.1 为什么要学习写驱动 树莓派开发简单是因为有厂家提供的wiringPi库,实现超声波,实现继电器操作,做灯的点亮-都非常简单. 但未来做开发时,不一定都是用树莓派,则没有wirin ...
- 树莓派基于Linux内核驱动开发详解
一.驱动认知 首先理解Linux内核框图 文件系统认知,Linux内核框图 1.什么是驱动 linux内核驱动.软件层面上的驱动 广义上是指:这一段代码操作了硬件去动,所以这一段代码就叫硬件的驱动程序 ...
- 第三阶段:43-47.树莓派基于Linux内核驱动开发
目录 一.驱动认知 1.1 为什么要学习写驱动 1.2 文件名与设备号 1.3 open函数打通上层到底层硬件的详细过程 二.基于框架编写驱动代码 2.1 编写上层应用代码 2.2 修改内核驱动框架代 ...
- 基于RK3399 PWM驱动开发
1. 主板型号:AIO-3399J 2. 芯片型号:RK3399 3. 操作系统版本:Android 7.1 4. Linux版本:v4.4.103 PWM(Pulse Width Modulatio ...
- 《WDF USB驱动开发指南》-- USB 设备硬件结构
PDF全文下载地址:http://download.csdn.net/source/2320280 驱网介绍:http://bbs3.driverdevelop.com/read.php?tid-12 ...
- 《WDF USB驱动开发指南》-- WDF简介
PDF全文下载地址:http://download.csdn.net/source/2320280 驱动网介绍:http://bbs3.driverdevelop.com/read.php?tid-1 ...
- Windows驱动开发VXD/WDM/WDF/DDK/WDK的联系和区别
背景介绍 首先,先从基础的东西说起,做任何程序的开发,你都需要一个配套的开发套件,专业术语叫做SDK(Software Development Kit,软件开发套件).比如:开发JAVA程序,我们可能 ...
- 基于MTD的NAND驱动开发(二)
基于MTD的NAND驱动开发(二) 基于MTD的NAND驱动开发(三) http://blog.csdn.net/leibniz_zsu/article/details/4977853 http:// ...
- linux驱动开发音频设备驱动,linux驱动开发—基于Device tree机制的驱动编写
摘要:媒介 Device Tree是一种用去描绘硬件的数据布局,类似板级描绘说话,发源于OpenFirmware(OF).正在现在遍及应用的kernel 2.6.x版本中,对分歧仄台.分歧硬件,往] ...
最新文章
- C++ string线程不安全
- CSS定位网页中的元素
- 广度优先搜索——好奇怪的游戏(洛谷 P1747)
- linux 创建进程 execl,linux中进程的vfork()和execl()函数
- 原生JavaScript练习——全选
- es match 查询时间段_elasticsearch 笔记二 之基础查询
- 一. python的collections模块
- mysql 命令 字符集_MySQL的字符集操作命令总结
- php连接mysql字符串函数_mysql 字符串函数
- 【android自定义控件】自定义Toast,AlterDialog,Notification 四
- phpdesigner怎么写php,phpdesigner
- ios 监测网页按钮_关于iOS加载WebView监控网页上的点击事件
- 说说的那道求面积的小学六年级几何题
- pdf转换器免费版安装和使用
- 【博客话题】人在囧途之“运维囧”
- centos linux系统日志分析,CentOS 7日志分析详解【二】
- java开学考试感想及代码
- 设计,构建线框图和对Android应用进行原型制作:第1部分
- 帧定格(用于定格画面添加字幕或者图片)
- 【光通信-1】根据光模块拉环颜色区分光模块
热门文章
- 上海交大计算机系分数线2019,2019年上海部分高校各专业录取分数线汇总|附2019上海交通大学上海生源情况!...
- 计算程序中flag是什么意思,python中flag什么意思
- MYSQL临时表,大数据查询优化
- linux sed替换行,shell - 使用Sed替换包含字符串的整行
- matlab在编辑器中写完了怎么运行,在编辑器中运行测试
- 谈谈自信,为什么自信是成功的第一秘诀?
- Vue 2.6.13 源码解析(四) Observer、Dep、Watcher与订阅
- Python处理Excel数据分组
- macos安装盘第三方工具制作_制作 macOS Mojave U盘USB启动安装盘方法教程 (全新安装 Mac 系统)...
- springboot 项目中用doc转成PDF