[发明专利]一种文件扫描方法及装置在审
申请号: | 201410421430.0 | 申请日: | 2014-08-25 |
公开(公告)号: | CN104182519A | 公开(公告)日: | 2014-12-03 |
发明(设计)人: | 郭明强;钱科明;曹亮 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州三环专利代理有限公司 44202 | 代理人: | 温旭;郝传鑫 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 扫描 方法 装置 | ||
技术领域
本发明涉及文件扫描领域,更为具体而言,涉及一种文件扫描方法及装置。
背景技术
硬链接表示多个路径引用了一个相同大小(经过单项算法计算校验和相同)的单个文件。具有多个硬链接数的文件,其在分区/卷中只有一份数据。
在现有的文件扫描技术中,会按照对文件的遍历顺序调用扫描引擎对文件进行扫描处理,因此,对于具有多个硬链接数的文件会重复调用扫描引擎进行扫描处理(包括读取、计算特征等处理),这使得扫描引擎做了很多无用功,增加了扫描过程中的输入输出(IO)开销和中央处理器(CPU)开销,降低了扫描效率。
发明内容
为了解决现有的文件扫描技术所存在的缺陷,本发明实施方式提供一种文件扫描方法及装置,能够降低扫描过程中的IO开销和CPU开销,提高文件扫描效率。
一方面,本发明实施方式提供了一种文件扫描方法,包括:
获取作为扫描目标的待扫描文件的硬链接数;
如果所述待扫描文件的硬链接数大于1,则在首次以所述待扫描文件作为扫描目标时,调用扫描引擎扫描所述待扫描文件以获取所述待扫描文件的扫描结果,并将用于唯一标识所述待扫描文件的文件识别标识以及所述待扫描文件的扫描结果保存至存储单元,
在再次以所述待扫描文件作为扫描目标时,根据所述文件识别标识从所述存储单元查询并获取所述待扫描文件的扫描结果。
在本发明实施例的一种实现方式中,所述方法还包括:根据所述待扫描文件在存储器中的存储位置确定所述文件识别标识。
进一步地,所述根据所述待扫描文件在存储器中的存储位置确定所述文件识别标识包括:获取所述待扫描文件在磁盘中的存储位置作为所述文件识别标识。例如,在存储器仅包括一个物理磁盘的情况。由此,无论待扫描文件具有多少硬链接数,所述待扫描文件与文件识别标识一一对应。
或者,进一步地,所述根据所述待扫描文件在存储器中的存储位置确定所述文件识别标识包括:获取所述待扫描文件所在磁盘的磁盘标识以及所述待扫描文件在磁盘中的存储位置,根据所述待扫描文件所在磁盘的磁盘标识和所述待扫描文件在磁盘中的存储位置确定所述文件识别标识。例如,在存储器包括多个物理磁盘的情况。由此,即使在多个磁盘组成的存储器中,无论待扫描文件具有多少硬链接数,所述待扫描文件与文件识别标识一一对应。
可选地,在该实现方式中,所述待扫描文件在磁盘中的存储位置包括:待扫描文件在分区/卷中的起始簇号、在分区/卷中相对物理磁盘的起始偏移地址、在分区/卷中相对物理磁盘的起始扇区号、在物理磁盘中的起始偏移地址或在物理磁盘中的起始扇区号。
在本发明实施例的另一实现方式中,所述在首次以所述待扫描文件作为扫描目标时,调用扫描引擎扫描所述待扫描文件以获取所述待扫描文件的扫描结果,包括:根据所述文件识别标识查询所述存储单元,如果所述存储单元中没有保存所述文件识别标识,则调用扫描引擎扫描所述待扫描文件以获取所述待扫描文件的扫描结果。
由此,能及时确定首次以所述待扫描文件作为扫描目标的情况并进行相应处理。
进一步地,所述将用于唯一标识所述待扫描文件的文件识别标识以及对应的所述待扫描文件的扫描结果保存至存储单元,包括:在确定所述存储单元中没有保存所述文件识别标识之后,将所述文件识别标识保存至所述存储单元;在调用扫描引擎并获取所述待扫描文件的扫描结果之后,将所述扫描结果保存至所述存储单元。
其中,可以顺序地执行对文件识别标识的保存和对扫描引擎的调用,也可以分别执行对文件识别标识的保存和对扫描引擎的调用。同样地,在调用扫描引擎并获取所述待扫描文件的扫描结果之后,可以顺序地执行对扫描结果的保存和对下一个待扫描文件的处理,也可以分别执行对扫描结果的保存和对下一个待扫描文件的处理。
在本发明实施例的再一实现方式中,在再次以所述待扫描文件作为扫描目标时,根据所述文件识别标识从所述存储单元查询并获取所述待扫描文件的扫描结果,包括:根据所述文件识别标识查询所述存储单元,如果所述存储单元中保存有所述文件识别标识,则根据所述文件识别标识从所述存储单元查询并获取所述待扫描文件的扫描结果。
由此,能及时确定再次以所述待扫描文件作为扫描目标的情况并进行相应处理。
在本发明实施例的又一实现方式中,所述方法还包括:如果所述待扫描文件的硬链接数等于1,则调用扫描引擎扫描所述待扫描文件以获取所述待扫描文件的扫描结果。由此,能对硬链接数等于1的待扫描文件进行处理。
相应地,本发明实施例还提供一种文件扫描装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司;,未经百度在线网络技术(北京)有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410421430.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种协同过滤推荐方法及装置
- 下一篇:数据仓库中的索引统计信息处理方法及装置