关于文件过滤驱动的两个问题请教高人

Horace88   2008-9-1 22:54 楼主
1.关于驱动分层与过滤驱动的关系。我一直搞不清驱动分层与过滤驱动的分别,我现在自己的理解是:对于过滤驱动来说,它处理完截获的IRP后直接调用IoCallDriver发送给下一层设备,而对于分层驱动来说某一层的驱动完成IRP后使用IoCompleteRequest向IO管理器提交,再由IO管理器将这个“半成品”IRP发给其下一层驱动。我的理解对吗?另外对于文件系统驱动跟磁盘驱动来说他们属于分层驱动?还是文件系统驱动作为磁盘驱动的过滤驱动?因为按我的理解文件系统驱动既可以设计成磁盘驱动的过滤驱动,也可以设计成磁盘驱动的上层驱动,好象没什么区别(唯一有点区别好象就是不能在扇区级别过滤,因为文件系统把文件名解析成扇区号后直接交给磁盘驱动了,而过滤驱动又不能插到两个驱动之间)



2. IoCallDriver一定返回的一定是STATUS_PENDING吗,可不可能直接返回STATUS_SUCCESS ?


谢谢

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复