[发明专利]基于分层文件系统的Windows内核文件透明过滤的方法在审
申请号: | 201410360078.4 | 申请日: | 2014-07-25 |
公开(公告)号: | CN104123371A | 公开(公告)日: | 2014-10-29 |
发明(设计)人: | 管海兵;龚路;戚正伟 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F21/60 |
代理公司: | 上海新天专利代理有限公司 31213 | 代理人: | 张宁展 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 分层 文件系统 windows 内核 文件 透明 过滤 方法 | ||
1.一种基于分层文件系统的Windows内核文件透明过滤的方法,其特征在于,该方法包括如下步骤:
首先,将文件系统过滤驱动直接或间接地绑定在原有的文件系统驱动上,使之能够截获I/O管理器下发的IRP;
然后,当用户请求操作系统创建或打开一个文件时,I/O管理器会请求创建一个文件对象,并下发功能号为IRP_MJ_CREATE的IRP,包含分层文件系统的文件系统过滤驱动将截获该IRP,获取文件名和打开方式信息,并根据用户的选择,决定是否接管这个文件的I/O操作:
如果选择不接管这个文件的I/O操作,则直接下发原来的IRP到原文件系统;
如果选择接管这个文件的I/O操作,则创建一个FCB,该FCB属于分层文件系统,且满足三个要求:能和I/O管理器正常交互、能被过滤驱动识别、包含下层文件系统的文件句柄;
当用户请求操作系统对一个文件进行打开或创建以外的操作时,I/O管理器会对下层文件系统下发一个包含该I/O操作功能号的IRP;此时,包含分层文件系统的文件系统过滤驱动将截获所有I/O操作功能号的IRP,并判断I/O操作所针对的文件对象中的FCB是否属于该分层文件系统:
如果属于该分层文件系统,则在文件系统过滤驱动中完成该IRP的处理;
如果不属于该分层文件系统,则下发该IRP到下层文件系统;
最后,文件系统过滤驱动处理文件的关闭。
2.根据权利要求1所述的基于分层文件系统的Windows内核文件透明过滤的方法,其特征在于,在文件系统过滤驱动中完成该IRP的处理,具体实现方法是:
对于不需要修改语义的I/O操作,直接生成内容完全相同、目标为下层文件对象的IRP,并调用下层文件系统,待下层文件系统完成请求后,将I/O结果按原样返回给用户;
对于需要修改语义的I/O操作,利用分层文件系统定制I/O操作的语义,一个上层的I/O操作,对应于零个、一个或多个下层的I/O操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410360078.4/1.html,转载请声明来源钻瓜专利网。