本文主要结合TraceView.exe工具,介绍一个典型的KMDF驱动程序的加载和卸载过程。相关理论主要来自《Win7设备驱动程序开发》一书。关于TraceView.exe的使用,可以参考我之前的博客:点击打开链接。
一、启动和加载顺序
在《Win7设备驱动程序开发》的7.2节——“设备的枚举和启动”中,提到:为了准备操作设备,KMDF将按固定顺序调用驱动程序的回调例程。其中FDO或过滤器DO回调过程如下:(自下而上,从插入设备开始)
二、卸载顺序
关闭FDO或过滤器DO电源以及移除FDO或过滤器DO过程中涉及的回调函数调用顺序。
<

本文通过TraceView工具详细解析了KMDF驱动程序在Windows中的加载和卸载步骤,包括设备枚举启动顺序、回调函数调用及实际设备的加载卸载事件跟踪。以PLX9x5x驱动为例,展示了加载过程(PlxEvtDeviceAdd, AddDevicePDO, PlxEvtDevicePrepareHardware等)和卸载过程(PlxShutdown, PlxEvtDevicePrepareHardware, PlxEvtDriverContextCleanup等)。"
135857412,15126619,射击比赛成绩统计与排序算法,"['算法', '数据结构', '编程', 'C++', 'Python', 'Java']
最低0.47元/天 解锁文章
2504

被折叠的 条评论
为什么被折叠?



