Windows驱动开发(二)
2020-12-13 05:36
标签:des style blog http color 使用 os strong
1. 驱动程序的基本组成
1.1. 最经常见到的数据结构
a. DRIVER_OBJECT驱动对象 参数说明: 驱动对象图解: b. DEVICE_OBJECT设备对象 参数说明: 根据设备的需要,需要填写响应的设备类型。当制作虚拟设备时,应当选择FILE_DEVICE_UNKONWN类型的设备。 c. 设备扩展 设备对象中只包含了设备的基本信息,如果需要保存其他的信息可以使用设备扩展。 设备扩展是由程序员自定义的,可以按照自己的需要添加相关的信息。设备扩展保存在非分页内存中。 在驱动程序中应该尽量避免使用全局函数,因为全局函数往往导致函数的不可重入性。将全局变量以设备扩展方式储存,加以适当的同步保护措施是一个很好的解决方案。除此之外设备扩展往往还会记录一下信息: 设备对象的反向指针。 设备状态或驱动环境信息。 中断对象指针。 控制器对象指针。
由于设备扩展是驱动程序专用的,它的结构必须在驱动程序的头文件中定义。 Windows驱动开发(二),搜素材,soscw.com Windows驱动开发(二) 标签:des style blog http color 使用 os strong 原文地址:http://blog.csdn.net/ghevinn/article/details/38231151