过滤驱动的问题自我总结


[关键词]:过滤驱动,设备堆栈,绕过设备堆栈


[问题描述]:

需要分析读写驱动发往disk.sys的IO特征来为性能提升提供支持,因此准备做一个过滤驱动diskFilter attach到disk.sys设备栈,然后在过滤驱动里记录发往下层的读写IO信息。

工作流程都设计好了,准备开始编码了,突然发现不行,很可能没有效果。

为什么呢?

因为disk的设备堆栈可能从底向上为disk---PartMgr---diskFilter。但问题在于,处于安全性和效率的考虑,读写驱动直接绕过了上述的设备堆栈,直接列举出disk.sys的设备对象,然后把IO直接发到这些设备对象。

然后diskFilter就干等吧,啥也等不到,情形和法国的马其诺防线相似。



原文地址:https://www.cnblogs.com/bugchecker/p/3041602.html