控制c程序的流程图以找到最坏的可能路径

时间:2011-04-15 03:01:17

标签: c gcc compilation static-analysis control-flow-graph

是否有任何工具,库或框架来获取C程序的控制流程图,并找到程序可能采用的最差路径?

当我阅读与控制流图相关的其他问题时,我遇到了一些可以生成控制流图的工具。有没有办法用它们来找到最糟糕的路径?

2 个答案:

答案 0 :(得分:1)

如果图形中会有循环,那么没有 - 没有一种万无一失的方法可以解决这个问题,因为这个问题等同于halting problem。简短版本:给定一个任意其他程序的程序甚至不可能确定它是否会返回。您可以确定潜在的无限循环,但唯一可靠的方法是使用详尽的输入集来实际运行程序。

答案 1 :(得分:0)

你可能会对Worst Case Execution Time感兴趣,如果成功的话,在某种意义上肯定会找到你最糟糕的控制流程。

关于计算C控制流图的库,请参阅我们的flow analysis support for DMS了解C和其他语言,