System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 面向硬件模糊测试的种子调度方法及装置制造方法及图纸_技高网

面向硬件模糊测试的种子调度方法及装置制造方法及图纸

技术编号:41286289 阅读:9 留言:0更新日期:2024-05-11 09:34
本发明专利技术提供一种面向硬件模糊测试的种子调度方法及装置,涉及硬件模糊测试技术领域,所述方法包括:在当前轮次的硬件模糊测试中,从用于存放种子池中待执行种子的种子队列中,选择覆盖率最大的目标待执行种子;在目标待执行种子为一个的情况下,对目标待执行种子执行变异;在目标待执行种子为多个的情况下,从多个目标待执行种子中,选择种子序列最短的目标待执行种子执行变异。本发明专利技术以种子覆盖率为导向的种子调度策略在执行相同数量的种子后可以达到更高的覆盖率,能更好地探索测试路径,更有效执行硬件模糊测试,提高硬件模糊测试的效率;在种子覆盖率相同的情况下以种子序列长度为导向的种子调度策略,可以进一步提高硬件模糊测试的效率。

【技术实现步骤摘要】

本专利技术涉及硬件模糊测试,尤其涉及一种面向硬件模糊测试的种子调度方法及装置


技术介绍

1、在硬件模糊测试领域中,“种子”作为模糊测试的输入,其直接影响当前模糊测试的测试性能和效果。通过对种子进行有选择的调度执行,会极大的提高硬件模糊测试的效率。

2、当前硬件模糊测试领域中,种子的调度方法几乎都是简单地使用先进先出(firstinput first output,fifo)策略,即根据种子的生成时间来顺序执行接下来的硬件模糊测试环节。

3、但是对于一些大型的硬件设计,其状态空间非常大,即可能会产生许多种子输入,此时使用先进先出的调度策略会导致一些更好的种子无法得到及时执行,这极大地影响了硬件模糊测试的效率。


技术实现思路

1、本专利技术提供一种面向硬件模糊测试的种子调度方法及装置,用以解决现有技术中种子调度策略影响硬件模糊测试的效率的缺陷,实现提高硬件模糊测试的效率。

2、本专利技术提供一种面向硬件模糊测试的种子调度方法,包括:

3、在当前轮次的硬件模糊测试中,从用于存放种子池中待执行种子的种子队列中,选择覆盖率最大的目标待执行种子;

4、在所述目标待执行种子为一个的情况下,对所述目标待执行种子执行变异;

5、在所述目标待执行种子为多个的情况下,从多个所述目标待执行种子中,选择种子序列最短的所述目标待执行种子执行变异。

6、在一些实施例中,所述方法还包括:

7、获取所述目标待执行种子执行变异后产生的新种子;

8、将所述新种子插入到所述种子队列中。

9、在一些实施例中,所述将所述新种子插入到所述种子队列中,包括:

10、在每个所述新种子执行硬件模糊测试过程中,收集每个所述新种子的反馈信息;所述反馈信息包括:覆盖率和种子序列;

11、根据每个所述新种子的覆盖率和种子序列,按照预设排序策略,将所述新种子插入到所述种子队列中;所述预设排序策略为种子覆盖率越大排序越靠前,以及在覆盖率相同的情况下,种子序列越短排序越靠前。

12、在一些实施例中,在所述将所述新种子插入到所述种子队列中之后,还包括:

13、将所述种子队列中排在首位的种子,作为下一次的目标待执行种子。

14、在一些实施例中,在所述将所述新种子插入到所述种子队列中之前,还包括:

15、在所述目标待执行种子执行变异后,将所述目标待执行种子从所述种子队列中剔除到所述种子池中。

16、在一些实施例中,所述反馈信息还包括:种子创建时间;所述种子创建时间用于表征当前次数的硬件模糊测试的进展。

17、本专利技术还提供一种面向硬件模糊测试的种子调度装置,包括:

18、选择模块,用于在当前轮次的硬件模糊测试中,从用于存放种子池中待执行种子的种子队列中,选择覆盖率最大的目标待执行种子;

19、执行模块,用于在所述目标待执行种子为一个的情况下,对所述目标待执行种子执行变异;

20、在所述目标待执行种子为多个的情况下,从多个所述目标待执行种子中,选择种子序列最短的所述目标待执行种子执行变异。

21、本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述面向硬件模糊测试的种子调度方法。

22、本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述面向硬件模糊测试的种子调度方法。

23、本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述面向硬件模糊测试的种子调度方法。

24、本专利技术提供的面向硬件模糊测试的种子调度方法及装置,通过从种子队列中选择覆盖率最大的目标待执行种子;在目标待执行种子为一个的情况下,对目标待执行种子执行变异;在目标待执行种子为多个的情况下,从多个目标待执行种子中,选择种子序列最短的目标待执行种子执行变异。以种子覆盖率为导向的种子调度策略在执行相同数量的种子后可以达到更高的覆盖率,能更好地探索测试路径,更有效执行硬件模糊测试,从而节省硬件模糊测试的时间和资源,提高硬件模糊测试的效率;在一般情况下,种子序列越短相应的种子执行时间越短,因此,在种子覆盖率相同的情况下以种子序列长度为导向的种子调度策略,可以进一步提高硬件模糊测试的效率。

本文档来自技高网...

【技术保护点】

1.一种面向硬件模糊测试的种子调度方法,其特征在于,包括:

2.根据权利要求1所述的面向硬件模糊测试的种子调度方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的面向硬件模糊测试的种子调度方法,其特征在于,所述将所述新种子插入到所述种子队列中,包括:

4.根据权利要求3所述的面向硬件模糊测试的种子调度方法,其特征在于,在所述将所述新种子插入到所述种子队列中之后,还包括:

5.根据权利要求2所述的面向硬件模糊测试的种子调度方法,其特征在于,在所述将所述新种子插入到所述种子队列中之前,还包括:

6.根据权利要求3所述的面向硬件模糊测试的种子调度方法,其特征在于,所述反馈信息还包括:种子创建时间;所述种子创建时间用于表征当前次数的硬件模糊测试的进展。

7.一种面向硬件模糊测试的种子调度装置,其特征在于,包括:

8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述面向硬件模糊测试的种子调度方法。

9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述面向硬件模糊测试的种子调度方法。

10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述面向硬件模糊测试的种子调度方法。

...

【技术特征摘要】

1.一种面向硬件模糊测试的种子调度方法,其特征在于,包括:

2.根据权利要求1所述的面向硬件模糊测试的种子调度方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的面向硬件模糊测试的种子调度方法,其特征在于,所述将所述新种子插入到所述种子队列中,包括:

4.根据权利要求3所述的面向硬件模糊测试的种子调度方法,其特征在于,在所述将所述新种子插入到所述种子队列中之后,还包括:

5.根据权利要求2所述的面向硬件模糊测试的种子调度方法,其特征在于,在所述将所述新种子插入到所述种子队列中之前,还包括:

6.根据权利要求3所述的面向硬件模糊测试的种子调度方法,其特征在于,所述反馈信息还包括:种子创建时间;...

【专利技术属性】
技术研发人员:陈李维郭梓辉史岗孟丹
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1