论文部分内容阅读
随着软件技术的不断发展,软件测试技术对于软件开发者来说越来越重要,一个软件的好坏直接影响到企业或者个人的相应方面的信息安全,目前软件测试主要是为软件代码程序生成一些特殊的值,如各种临界点的值,来执行软件代码去测试代码程序是否可以按照需求说明书中所写的功能一样正常运行,但目前的软件测试技术,如单元测试,很多都需要测试人员自己去分析代码,自己写出测试驱动程序去对软件的各个模块进行测试,这就需要花费很大的人力和物力去写这些驱动程序来测试。符号执行是一种典型的用于软件测试的测试输入数据生成技术,即在给定的时间里去搜寻尽可能多的不同的程序路径,对每一个路径,产生一组测试案例,它可以发现包括断言违反、未捕获异常、安全漏洞和内存崩溃等错误。符号执行技术还处于学术研究阶段,目前已有的符号执行工具都是一些研究机构或者大学设计出来用于研究使用,符号执行作为一种可以自动生成测试案例的软件测试技术,是一种很好的软件测试技术,具有很好的发展前景,在不久的将来很可能成为软件测试的主流技术,所以对符号执行的研究有很好的研究价值。但目前已经存在符号执行测试工具都只能适用于PC机上,对于其他平台符号执行技术还没有很好的得到应用,对其应用于其他平台上的研究具有很好的研究价值;本文主要研究符号执行技术在嵌入式平台的应用,设计出可以应用于嵌入式平台上的符号执行工具,本文首先对符号执行的研究背景及现状,符号执行的理论知识、工具及符号执行目前所面临的问题进行介绍,接着设计适用于嵌入式符号执行工具,然后通过一些程序去测试该工具是否可以正常运行,最后介绍了所设计工具的一些不足,并对之后的工作进行展望。