摘要
静态分析技术作为一种重要的提高程序安全性的手段,目前已被广泛地用于查找程序中的错误和漏洞。性能作为静态分析工具的一个重要指标,直接影响到工具的实用性和可伸缩性。在多核处理器时代,提升工具分析性能的一个有效的途径是充分利用多个处理器来增加分析的并行度。本文的目的是探究如何在静态分析工具中使用并行化分析技术来提升工具的分析性能。我们在实验室设计的一款专门分析C程序中单链表、双链表等数据结构的形状和内存相关错误的静态分析工具上,根据工具本身的分析层次和分析过程,在工具的函数层次和路径层次上使用并行化分析技术,然后在服务器平台上对并行化分析技术的效果进行实验测试。实验数据表明,在这两个层次上使用并行化分析技术能有效地提升工具的分析性能。
As an important way to improve software's safety, static analysis technology has been widely used to find errors and bugs in program. Performance is a significant factor for static analysis tool and directly affects the usability and scalability of the tool. On the era of multi-core processors, one of effective methods to improve the analysis performance is to fully utilize multiple processors and add the degree of parallelism. This paper is to find out how to utilize parallel analysis technology to improve the analysis performance in static analysis tool. Our work is based on a static analysis tool that designed by our lab. It supports to analyze the shape of some data structures such as single linked list and double linked list and find out errors and bugs with memory in a C program. On the basis of the analysis levels and procedures of tool, we utilize parallel analysis technology on function level and path level and then test if our method is effective for the tool on a server platform. The experiment data indicates that utilizing parallel analysis technology on these two levels can effectively improve the tool's performance.
出处
《电子技术(上海)》
2015年第8期20-26,共7页
Electronic Technology
基金
国家自然科学基金面上项目(61170018)