什么程序切片工具实际存在?

feu*_*ene 13 code-analysis static-analysis dynamic-analysis analysis utility

我刚刚介绍了"程序切片"这个术语.人们想要这样的功能是完全合理的,但是它存在于任何地方吗?

这个词现在已经20岁了,我看到有很多出版物,研究论文等等.但实际的工具在哪里?人们是否真的将这个概念付诸实践,或者只是在学术上研究它?

什么在那里,以及什么语言?

编辑:我想我正在寻找什么,我作为一个接受的答案奖励,是一些出版物/组织/等的参考,特别是面向程序切片和维护工具/技术等的列表.

Ira*_*ter 9

[编辑](对OP修订问题的回应)

我一直在关注这些文献很长一段时间.我不认为有一个"程序切片"中心有一个你想要的那种列表.大多数已经建成的程序切片机都是某种大学实验(意味着它们不能在生产中工作,也不能用于实际目的).你可以通过搜索scholar.google.com上的术语来猜测它们,猜猜是什么,"程序切片"; 我怀疑你已经知道了.我认为你已经拥有的"巨人"了.

这项调查有点陈旧,但由一位出色的研究人员完成:http://www.cse.buffalo.edu/LRG/CSE605/Papers/slicing-survey-tip.pdf.这个是最近的:http: //dl.acm.org/citation.cfm?id = 1050865.

CodeSurfer是一种用于在C程序上执行静态切片的商业工具.我相信他们也会处理C++.其他工具无法提供的重要优势是用于交互式探索代码片的UI.

Indus是用于在Java上进行静态代码切片的大学研究工具.我不确定这是否还在积极开发中.

似乎有大量由Java构建的"动态"程序切片工具.他们都没有正在积极开发或使用我所知道的.

我公司提供DMS软件再造工具包,其中包含用于程序控制和数据流分析的通用机器,包括构建自定义静态代码切片器.DMS已被用于构建大型C程序片段以及工业过程控制程序.(我提供了一个链接,但是当我这样做时,人们似乎很讨厌它).


bya*_*ako 6

所述邮资-C平台,这是专门为C代码进行分析,具有完全成熟的过程间切片插件.例如,请参阅此页面,用户使用此插件来简化他正在分析的程序.