首页
›
Linux内核与驱动
›
179-Windows驱动开发
›
《UMDF框架IRP处理与设备栈遍历故障排查》
VIP10
本课程属于:179-Windows驱动开发
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
UMDF框架IRP处理与设备栈遍历故障排查
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
UMDF概述
UMDF架构简介 · UMDF与KMDF的区别 · UMDF驱动模型
UMDF
架构简介
02
UMDF驱动对象模型
IWDFDriver · IWDFDevice · IWDFIoQueue
UMDF
驱动对象模型
03
IRP与WDFREQUEST
IRP概念回顾 · WDFREQUEST对象 · 从IRP到WDFREQUEST的转换…
IRP
WDFREQUEST
04
UMDF IRP处理流程
IRP到达驱动栈 · 框架拦截 · WDFREQUEST创建
UMDF
IRP
05
I/O队列配置
顺序队列 · 并行队列 · 手动队列的创建与配置
I/O
队列配置
06
I/O请求处理回调
OnRead · OnWrite · OnDeviceIoControl回…
I/O
请求处理回调
07
请求完成与取消
IWDFIoRequest · 取消回调 · 取消同步机制
请求完成
取消
08
设备栈概念
设备栈定义 · 设备对象层次 · 设备栈与IRP流动方向
设备栈概念
设备栈定义
09
UMDF设备栈结构
UMDF驱动栈组成 · 反射器 · 驱动宿主进程
UMDF
设备栈结构
10
设备栈遍历API
IWDFDevice · GetParentDevice · GetChildDevice等
API
设备栈遍历
11
设备栈遍历实战
遍历当前设备的上层与下层设备 · 获取设备属性
设备栈遍历实战
遍历当前设备的上…
12
IRP在设备栈中的传递
IRP向下传递 · 完成例程 · 传播状态
IRP
设备栈
13
IRP完成状态管理
STATUS_SUCCESS · STATUS_PENDING · STATUS_MORE_PROCES…
IRP
完成状态管理
14
同步与异步处理
同步请求处理 · 异步请求处理 · 完成回调中的同步
同步
异步处理
15
电源管理IRP
IRP_MJ_POWER处理 · Dx状态转换 · 空闲检测
IRP
电源管理
16
PNP与启动IRP
IRP_MJ_PNP处理 · 启动 · 停止
PNP
IRP
17
内部I/O请求
驱动内部发送I/O请求 · IWDFIoRequest · 同步等待
I/O
内部
18
I/O目标对象
IWDFIoTarget · 打开远程目标 · 发送请求到其他驱动栈
I/O
目标对象
19
UMDF驱动调试环境
WinDbg配置 · UMDF调试扩展 · 宿主进程附加
UMDF
驱动调试环境
20
常见IRP处理错误
未完成请求 · 重复完成 · 错误状态码
IRP
常见
21
设备栈遍历故障
设备栈断裂 · 设备对象丢失 · 遍历返回NULL
设备栈遍历故障
设备栈断裂
22
IRP挂起问题
请求未完成 · 死锁 · 队列阻塞
IRP
挂起问题
23
驱动加载失败
宿主进程崩溃 · DLL加载错误 · 签名问题
驱动加载失败
宿主进程崩溃
24
UMDF日志与跟踪
WPP软件跟踪 · ETW事件 · UmdfTraceLogging
UMDF
日志
25
使用WinDbg分析IRP
!wdfrequest · !wdfqueue · !wdfdevice命令详解
WinDbg
IRP
26
设备栈遍历调试
!wdfdevice · !devstack · !devnode命令实战
设备栈遍历调试
wdfdevice
27
IRP完成回调调试
设置断点 · 查看请求状态 · 检查完成上下文
IRP
完成回调调试
28
内存与引用计数问题
对象引用计数泄漏 · 智能指针使用 · 释放顺序
内存
引用计数问题
29
性能优化
队列并发 · 请求合并 · 减少上下文切换
性能优化
队列并发
30
综合案例
模拟一个UMDF驱动IRP处理与设备…
综合案例
UMDF
所属VIP或分类
同VIP:KMDF框架IOCTL与中断处理协同设计实战
同VIP:KMDF框架中断处理与DMA传输性能调优
同VIP:KMDF框架中断处理与设备栈遍历实战