发明内容
本发明提供一种杀毒软件的扫描方法及装置,能够有效地增强杀毒软件对计算机系统的防护效果。
本发明提供了如下方案:
一种杀毒软件的扫描方法,所述杀毒软件包括至少两个扫描引擎,所述方法包括:
获取计算机系统中的特征信息;
根据所述特征信息以及预置的特征信息与扫描引擎之间的对应关系,确定与所获取到的特征信息适配的扫描引擎;
利用所述适配的扫描引擎,对所述计算机系统进行扫描。
其中,所述获取计算机系统中的特征信息包括:
获取所述计算机系统中的软件和/或硬件环境信息。
其中,所述硬件环境信息包括所述计算机系统的内存大小和/或计算机系统的中央处理器CPU速度。
其中,所述获取计算机系统中的特征信息包括:
获取所述计算机系统中的防护类型信息。
其中,所述防护类型包括实时防护或手动扫描;所述根据预置的配置数据,确定与所获取到的特征信息适配的扫描引擎包括:
当所述防护类型为实时防护时,将扫描速度快的扫描引擎确定为所述适配的扫描引擎;
当所述防护类型为手动扫描时,将至少两个扫描引擎确定为所述适配的扫描引擎。
其中,所述获取计算机系统中的特征信息包括:
获取所述计算机系统中待扫描的文件类型信息。
其中,所述获取计算机系统中的特征信息包括:
获取当前的扫描结果信息。
其中,所述利用所述适配的扫描引擎,对所述计算机系统进行扫描包括:
将所述确定出的适配的扫描引擎向用户推荐;
当用户接受所述推荐时,利用所述适配的扫描引擎,对所述计算机系统进行扫描。
一种杀毒软件的扫描装置,所述杀毒软件包括至少两个扫描引擎,所述装置包括:
特征信息获取单元,用于获取计算机系统中的特征信息;
选择单元,用于根据所述特征信息以及预置的特征信息与扫描引擎之间的对应关系,确定与所获取到的特征信息适配的扫描引擎;
扫描单元,用于利用所述适配的扫描引擎,对所述计算机系统进行扫描。
其中,所述特征信息获取单元包括:
第一获取子单元,用于获取所述计算机系统中的软件和/或硬件环境信息。
其中,所述硬件环境信息包括所述计算机系统的内存大小和/或计算机系统的中央处理器CPU速度。
其中,所述特征信息获取单元包括:
第二获取子单元,用于获取所述计算机系统中的防护类型信息。
其中,所述防护类型包括实时防护或手动扫描;所述选择单元包括:
第一选择子单元,用于当所述防护类型为实时防护时,将扫描速度快的扫描引擎确定为所述适配的扫描引擎;
第二选择子单元,用于当所述防护类型为手动扫描时,将至少两个扫描引擎确定为所述适配的扫描引擎。
其中,所述特征信息获取单元包括:
第三获取子单元,用于获取所述计算机系统中待扫描的文件类型信息。
其中,所述特征信息获取单元包括:
第四获取子单元,用于获取当前的扫描结果信息。
其中,所述扫描单元包括:
推荐子单元,用于将所述确定出的适配的扫描引擎向用户推荐;
扫描子单元,用于当用户接受所述推荐时,利用所述适配的扫描引擎,对所述计算机系统进行扫描。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明实施例在杀毒软件中配置至少两个扫描引擎,这样,在对计算机进行扫描时,就可以首先获取计算机系统中的特征信息,然后根据获取到的特征信息以及预置的特征信息与扫描引擎之间的对应关系,确定与获取到的特征信息适配的扫描引擎,并利用该扫描引擎对计算机系统进行扫描。因此,本发明实施例突破了仅有一个扫描引擎时的局限性,能够根据计算机系统的实际特点,适时地选择与之最匹配的扫描引擎,从而有效地增强杀毒软件对计算机系统的防护效果。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
首先,对于杀毒软件而言,扫描引擎可以说是其中最精华的部分,真正影响扫描速度或者扫描全面性的因素就是扫描引擎。然而,本发明人在实现本发明的过程中发现:现有技术的杀毒软件中都仅设置一个扫描引擎,而对于同一扫描引擎而言,有些性能指标之间通常是相互矛盾的,如果增强了其中一方面的效果,则另一方面必将受到损害,如果要在两者之间进行均衡,则两方面的效果可能都无法达到最优的状态。例如,对于一扫描引擎而言,如果其扫描速度比较快,则可能会以占用较多的内存为代价;如果擅长扫描程序文件,则对于非程序文件则可能并不是很擅长,等等。
基于以上所述,在本发明实施例中,可以在杀毒软件中设置多个扫描引擎,各个扫描引擎可以具有各自不同的优点,例如,扫描引擎A的优点是占用内存比较小,扫描引擎B的优点是扫描速度比较快;扫描引擎C擅长扫描程序文件,扫描引擎D擅长扫描非程序文件,等等。需要说明的是,对于一些非矛盾性的特点,多种优点可能集中在一个扫描引擎上,例如,扫描引擎A的特点是:占用内存小并且擅长扫描非程序文件,等等。
同时,还可以预先保存各个扫描引擎对应的调用条件。也即可以预先设置扫描引擎与其调用条件之间的对应关系。具体实现时,该调用条件具体可以为:计算机系统中可以获取到的各种可能的特征信息。具体的,特征信息可以包括计算机系统中的软件环境信息、硬件环境信息、防护类型以及待扫描的文件类型等等。其中,软件环境信息,顾名思义,可以包括计算机的操作系统、已经安装的杀毒软件等等;硬件环境信息可以包括计算机的内存大小、CPU处理速度等。防护类型可以分为实时防护及手动扫描两种,通常可以由用户选择或修改防护类型:例如,杀毒软件默认的防护类型可以为实时防护,如果用户不接受这种防护类型,可以将关闭实时防护,当需要进行扫描时,再手动启动扫描过程。关于待扫描的文件类型,根据不同的分类方法可以得到多种类别,例如,从是否为程序文件角度,可以分为程序文件及非程序文件,从文件编码格式等角度,还可以分为多媒体文件(其中还可以包括视频、音频等)以及文本文件,从文件大小的角度,还可以分为大型文件及小型文件,等等。
具体在保存对应关系时,如果特征信息是枚举型的信息,则可以直接保存扫描引擎与特征信息之间的对应关系。例如,防护类型可以包括实时防护和手动扫描两种,则可以保存实时防护时对应的扫描引擎是哪个,手动扫描时对应的扫描引擎是哪个;文件类型可以包括程序文件和非程序文件,则可以保存程序文件对应的扫描引擎,以及非程序文件对应的扫描引擎;等等。而如果获取的特征信息是计算机的内存大小、CPU处理速度等硬件环境信息,则可以采用量化的方式保存特征信息与扫描引擎之间的对应关系。例如,当内存小于某预置时,对应某扫描引擎,内存大于该预置时,则对应另一扫描引擎;或者,当CPU处理速度大于某预置时,对应某扫描引擎,小于该预置时,则对应另一扫描引擎,等等。
需要说明的是,关于特征信息与扫描引擎之间对应关系的设置,并不限于以上方式,本领域技术人员可以根据实际的需要进行其他方式的设置,或者选择其他的特征信息,都属于本发明实施例的保护范围。
基于以上所述,本发明实施例提供了一种杀毒软件的扫描方法,参见图1,该方法包括以下步骤:
S101:获取计算机系统中的特征信息;
具体实现时,获取特征信息的时机可以有多种,例如,可以在安装杀毒软件的过程中获取,或者,在用户修改设置信息时获取,又或者在扫描过程中获取,等等,具体的时机可以根据具体的特征信息进行选择。例如,如果想要获取计算机系统的硬件环境信息,则可以在安装的过程中,就去获取相应的特征信息,包括内存的大小、CPU处理速度等等。如果需要获取用户使用的防护类型,则可以在用户对杀毒软件的设置信息进行设置或者修改时获取。如果需要获取待扫描文件的类型信息,则可以在杀毒软件执行扫描的过程中,在具体需要扫描某一文件之前,首先判断该文件的类型,等等。
S102:根据所述特征信息以及预置的特征信息与扫描引擎之间的对应关系,确定与所获取到的特征信息适配的扫描引擎;
如前文所述,由于预先已经建立了各种可能的特征信息与扫描引擎之间的对应关系,因此,在获取到某计算机系统中的特征信息之后,就可以确定出与该特征信息相适配的扫描引擎。
例如,获取到的特征信息是当前计算机系统的内存大小,则可以首先将该值与预先设置的临界值进行比较,判断是大于临界值还是小于临界值,并且在预先保存的对应关系中,找出对应的扫描引擎。如果获取到的特征信息是当前计算机系统的CPU处理速度则与此类似。这样,就可以实现以下效果:在计算机系统的内存比较小时,尽量选择占用内存较小的扫描引擎对计算机系统进行扫描,这样可以避免与同时运行的其他程序争用内存,对其他程序造成影响。在计算机系统的CPU处理速度比较有限,则可以选择对CPU消耗比较低的扫描引擎。
如果获取到的特征信息是用户选择的防护类型,则可以直接从预先保存的对应关系中,找到与获取到的防护类型相对应的扫描引擎。例如,如果防护类型是实时防护,由于对反应速度要求较高,则可以选择扫描速度较快的扫描引擎;或者,由于实时防护时,扫描的过程通常是在后台进行,为了进行避免对正常运行的其他程序造成影响,也可以为实时防护选择对内存或CPU占用比较小的扫描引擎,等等。而如果防护类型是手动扫描,则用户可能会将其他程序关闭之后,再启动扫描的过程,因此不会涉及到与其他程序争用内存或CPU的情况,所以可以选择扫描比较全面的扫描引擎,而不必考虑扫描过程中对内存或CPU的占用。
如果获取到的特征信息是文件类型信息,则可以直接从预先保存的对应关系中,找到与获取到的文件类型相匹配的扫描引擎。例如,如果获取到的文件类型是程序文件,则找到对应关系中与程序文件相对应的扫描引擎;如果获取到的文件类型是非程序文件,则找到对应关系中与非程序文件相对于的扫描引擎。
需要说明的是,关于文件类型信息,可以是在扫描的过程中获取的。具体的,可以是在启动扫描之后,在每扫描一个具体的文件之前,都可以首先获取该文件的文件类型,然后选择相应的扫描引擎对该文件进行扫描。因此,在一次扫描过程中,可能会用到多种扫描引擎,当一个文件的类型相对于上一个文件的类型发生变化时,就可以进行扫描引擎的切换。
此外,还可以在一次扫描过程结束之后,去获取系统中的特征信息。此时的特征信息可以是扫描结果信息。例如,当扫描结果是系统中大量(可以通过与预置的阈值相比较来确定是否为大量)文件被扫描出恶意程序,则可以使用最新的、病毒清除能力较强的杀毒引擎,以保证恶意程序的清除效果。
需要说明的是,在实际应用中,也可以获取以上所述特征信息中的任意一种或多种,当获取的特征信息为多种时,则可以依据各种信息综合考虑,并最终选择出比较适合的扫描引擎。具体的,可以预先根据多种信息的各种可能的组合情况,设置相应的扫描引擎,等等。
S103:利用所述适配的扫描引擎,对所述计算机系统进行扫描。
在选择出适配的扫描引擎之后,就可以利用该适配的扫描引擎对计算机系统进行扫描了。
总之,利用本发明实施例的方法,由于可以为杀毒软件配置多个扫描引擎,并且能够根据计算机系统中的实际特征,选择相适配的扫描引擎对计算机系统进行扫描,因此,能够充分发挥各个扫描引擎的作用,有效增强对恶意程序的防护效果。
在实际应用中,当选择出适配的扫描引擎之后,还可以首先向用户进行推荐,如果用户选择接受该推荐,再利用该选择出的扫描引擎对该用户的计算机系统进行扫描;如果用户不接受推荐,则可以仍然使用原来配置的扫描引擎进行扫描。
与本发明实施例提供的杀毒软件的扫描方法相对应,本发明实施例还提供了一种杀毒软件的扫描装置,所述杀毒软件包括至少两个扫描引擎,参见图2,所述装置包括:
特征信息获取单元201,用于获取计算机系统中的特征信息;
选择单元202,用于根据所述特征信息以及预置的特征信息与扫描引擎之间的对应关系,确定与所获取到的特征信息适配的扫描引擎;
扫描单元203,用于利用所述适配的扫描引擎,对所述计算机系统进行扫描。
其中,在获取特征信息时,可以从多个方面去获取,例如,在一种情况下,特征信息获取单元201可以包括:
第一获取子单元,用于获取所述计算机系统中的硬件环境信息。
具体的,硬件环境信息可以包括所述计算机系统的内存大小和/或计算机系统的中央处理器CPU速度。
或者,在另一种情况下,特征信息获取单元201也可以包括:
第二获取子单元,用于获取所述计算机系统中的防护类型信息。
其中,所述防护类型包括实时防护或手动扫描;所述选择单元包括:
第一选择子单元,用于当所述防护类型为实时防护时,将扫描速度快的扫描引擎确定为所述适配的扫描引擎;
第二选择子单元,用于当所述防护类型为手动扫描时,将至少两个扫描引擎确定为所述适配的扫描引擎。
或者,特征信息获取单元201也可以包括:
第三获取子单元,用于获取所述计算机系统中待扫描的文件类型信息。
此外,特征信息获取单元201还可以包括:
第四获取子单元,用于获取当前的扫描结果信息。
具体实现时,扫描单元203可以包括:
推荐子单元,用于将所述确定出的适配的扫描引擎向用户推荐;
扫描子单元,用于当用户接受所述推荐时,利用所述适配的扫描引擎,对所述计算机系统进行扫描。
通过本发明实施例提供的上述杀毒软件的扫描方法,能够在杀毒软件中配置至少两个扫描引擎,这样,在对计算机进行扫描时,就可以首先获取计算机系统中的特征信息,然后根据获取到的特征信息以及预置的特征信息与扫描引擎之间的对应关系,确定与获取到的特征信息适配的扫描引擎,并利用该扫描引擎对计算机系统进行扫描。因此,本发明实施例突破了仅有一个扫描引擎时的局限性,能够根据计算机系统的实际特点,适时地选择与之最匹配的扫描引擎,从而有效地增强杀毒软件对计算机系统的防护效果。
以上对本发明所提供的一种杀毒软件的扫描方法及装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。