[发明专利]一种用于解除文件占用的方法及装置有效
申请号: | 201210361922.6 | 申请日: | 2012-09-25 |
公开(公告)号: | CN102902765A | 公开(公告)日: | 2013-01-30 |
发明(设计)人: | 张辉 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京市德权律师事务所 11302 | 代理人: | 刘杰 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 解除 文件 占用 方法 装置 | ||
1.一种用于解除文件占用的方法,包括:
获取待解除占用的目标文件的所有文件句柄;
获取所述待解除占用的目标文件的所有文件句柄各自所属的进程私有句柄表;
将所述目标文件的所有文件句柄的文件句柄对象由各自的进程私有句柄表中移除;
将所述目标文件的所有文件句柄的文件句柄对象的引用计数从系统中清零。
2.根据权利要求1所述的用于解除文件占用的方法,所述获取待解除占用的目标文件的所有文件句柄包括:
获取待解除占用的目标文件的路径;
枚举系统打开的所有文件句柄;
获取所有文件句柄对应文件的具体路径,并与待解除占用的目标文件的路径进行匹配;
将匹配成功的文件句柄作为待解除占用的目标文件的句柄。
3.根据权利要求2所述的用于解除文件占用的方法,所述枚举系统打开的所有文件句柄包括:
枚举系统的所有进程;
获取每一进程的私有句柄表;
集合所有进程的私有句柄表,获得所有进程打开的句柄;
在所述所有进程打开的句柄中找出所有的文件句柄。
4.根据权利要求3所述的用于解除文件占用的方法,所述枚举系统的所有进程至少包括如下步骤:
通过遍历活动进程链表中每一个进程在系统内核中所表示的数据结构,实现对活动进程的枚举,获得进程表。
5.根据权利要求2所述的用于解除文件占用的方法,所述枚举系统打开的所有文件句柄包括,
获取当前进程;
获取该当前进程的私有句柄表;
遍历该当前进程的私有句柄表与其它进程的私有句柄表形成的句柄表链,获得其它进程;
对所有获得的进程获取其私有句柄表;
集合所获取的私有句柄表,获得所有进程打开的句柄;
在所述所有进程打开的句柄中找出所有的文件句柄。
6.根据权利要求3或5所述的用于解除文件占用的方法,所述在所述所有进程打开的句柄中找出所有的文件句柄包括:
通过内存偏移找到各进程打开的每一句柄的句柄对象的对象头;
在对象头中读取对象类型数据或者对象类型索引;
根据对象头中对象类型数据或者对象类型索引指向的对象类型数据判断句柄类型;
筛选出类型为文件句柄的句柄。
7.根据权利要求1所述的用于解除文件占用的方法,将文件句柄对象由进程的句柄表中移除方式包括路径擦除或路径更改。
8.一种用于解除文件占用的装置,包括:
目标文件句柄获取单元,用于获取待解除占用的目标文件的所有文件句柄;
进程句柄表获取单元,用于获取所述待解除占用的目标文件的所有文件句柄各自所属的进程私有句柄表;
文件句柄对象移除单元,用于将所述目标文件的所有文件句柄的文件句柄对象由各自的进程私有句柄表中移除;
清零单元,用于将所述目标文件的所有文件句柄的文件句柄对象的引用计数从系统中清零。
9.根据权利要求8所述的用于解除文件占用的装置,所述目标文件句柄获取单元包括:
路径获取单元,用于获取待解除占用的目标文件的路径;
文件句柄枚举单元,用于枚举系统打开的所有文件句柄;
匹配单元,用于获取所有文件句柄对应文件的具体路径,并与待解除占用的目标文件的路径进行匹配。
10.根据权利要求9所述的用于解除文件占用的装置,所述文件句柄枚举单元还包括:
进程枚举单元,用于枚举系统的所有进程;
私有句柄枚举单元,用于获取进程的私有句柄表;
私有句柄表集合单元,用于集合所有进程的私有句柄表,获得所有进程打开的句柄;
文件句柄筛选单元,用于在所述所有进程打开的句柄中找出所有的文件句柄。
11.根据权利要求10所述的用于解除文件占用的装置,所述进程枚举单元包括:
进程遍历执行单元,用于遍历活动进程链表中每一个进程在系统内核中所表示的数据结构;
存储单元,用于存储获得的进程表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210361922.6/1.html,转载请声明来源钻瓜专利网。