通过静态分析复杂程序可获取系统的函数调用路径,便于系统框架的理解、分析及后期测试,但提高其分析效率和提取准确度的关键在于不可达函数调用路径的检测和去除。基于控制流信息,将函数指针和函数调用对数据流的影响综合考虑,结合数据流分析和检测分支相关性,利用路径敏感分析方法对函数调用路径中的不可达路径进行检测与去除,从而提取准确的函数调用信息。实验结果证明,上述方法可有效地对函数调用路径中的不可达路径进行检测,提高了分析效率及函数调用路径静态提取的准确度。
Through the static analysis of complex program can obtain the system function call path, easy to under- stand and analysis the system framework, help to late testing, but the key to improve the analysis efficiency and the extraction accuracy is the infeasible function call path detection and removal. Paper based on control flow informa- tion, take the impact factors of the data flow into account, like the effect of function pointers and function ealls on the data flow, combined with data flow analysis and detection of branch correlation, using the path sensitive analysis method to detect and remove the infeasible funcation call path, in order to extract accurate function call information. The experimental results show that this method can effectively detect the infeasible paths in the function call path, and improve the analysis efficiency and the accuracy of the static extraction of the function call path.