Windows驱动开发技术详解 笔记1
来源:互联网 发布:韩国大学知乎 编辑:程序博客网 时间:2024/05/17 21:47
1.Windows驱动程序分为两类:NT式驱动程序,WDM式驱动程序。
2.驱动程序的入口函数DriverEntry,它有两个参数DriverObject 和RegistryPath。
3.设备类型FILE_DEVICE_UNKNOWN此种设备为独占设备,即设备只能被一个应用程序所使用。
4.设备对内存的操作有两种方式:DO_BUFFERED_IO和 DO_DIRECT_IO
5.驱动卸载例程
6.在VS2005中配置驱动开发环境参考:http://blog.sina.com.cn/s/blog_5371d2790100bsy2.html
7.NT或WDM式的驱动程序在默认情况下是隐藏的,但也可以通过设备管理器来查看,路径如下:
8.有些代码中会看到这样的字段,比如:
8.WDM驱动程序中有一个dispatch 例程:AddDevice,该dispatch routine是用来创建设备对象并由PNP管理器调用的。
9.俄从去年就开始研究WDM驱动程序,到现在才发现俺写的一直都是NT式的驱动程序。唉..........
10.WDM和NT式驱动的一个重要区别就是要对IRP_MJ_PNP请求进行处理。还有一个就是AddDevice例程。
11.PAGED_CODE()
12.WDM 驱动程序的加载
13.科普知识
14.Windows驱动程序和普通win32的应用程序一样,也是PE格式的文件。C语言中对变量的声明必须在函数的首部,而C++则没有这个限制。但是C++的许多高级特性是不适合用来开发驱动程序的,所以可以使用C++的简单特性来写驱动程序。但最好还是用C。
15.当一个函数被调用的时候,首先压入函数的各个参数,然后压入函数的返回地址。当函数退出的时候以相反的顺序依次退出堆栈,从而保持了堆栈的平衡。
16.在C++中添加C语言的程序,需要用extern "C"来修饰
17.Windows操作系统规定,在内核模式的程序无法调用用户模式的程序,而用户模式的程序可以调用内核态的程序。
18.WDM驱动程序加载
- Windows驱动开发技术详解 笔记1
- Windows驱动开发技术详解
- Windows驱动开发技术详解
- <学习笔记>Windows驱动开发技术详解__Windows内存管理
- <学习笔记>Windows驱动开发技术详解__Windows内核函数
- <学习笔记>Windows驱动开发技术详解__派遣函数
- <学习笔记>Windows驱动开发技术详解__IRP的同步
- <学习笔记>Windows驱动开发技术详解__派遣函数
- Windows驱动开发技术详解笔记(10) 基本概念
- <学习笔记>Windows驱动开发技术详解__Windows内存管理
- windows驱动开发技术详解 总结
- <学习笔记>Windows驱动开发技术详解__驱动程序的同步处理
- windows驱动开发技术详解 第五章 windows内存管理
- Windows驱动开发技术详解——经典书评
- 开始晴耕雨读吧!-----学习《Windows驱动开发技术详解》(第一章)
- 学习《Windows驱动开发技术详解》(第二章)
- 学习《Windows驱动开发技术详解》(第三章)
- 《Windows驱动开发技术详解》读书笔记(二)
- 利用JS应用的Javascript网格插件
- 用Delphi实现程序检测计算机是否连网
- HDU 1728题逃离迷宫
- iOS程序发布测试-生成ad hoc证书
- OpenStack建立实例完整过程源码详细分析(11)
- Windows驱动开发技术详解 笔记1
- 计算机软件 Eclipse The Maven Integration requires that Eclips
- IOS应用程序生命周期-UIApplication的生命周期
- 直接解压出ipa包图片资源
- 在工作线程中处理UI线程报错:Only the original thread that created a view hierarchy can touch its views.
- linux 定时器去抖 按键驱动(转载)
- 防止JavaScript注入攻击
- Java:Carlos Perez:2013年值得学习的五种Java技术
- css 打印分页