跳到主要内容
10.1145/1081706.1081738acm会议文章/章节视图摘要出版物页面fse公司会议记录会议集合
第条

匹配程序版本的执行历史

出版:2005年9月1日出版历史

摘要

我们开发了一种匹配两个程序版本的程序执行动态历史的方法。生成的匹配在许多应用程序中都很有用,包括软件盗版检测和一些调试场景。与一些用于匹配程序版本的静态方法不同,我们的方法不需要访问两个程序版本的源代码,因为可以通过运行程序二进制文件的检测版本来收集动态历史记录。我们将匹配算法建立在比较丰富的程序执行历史的基础上,这些历史包括:采取的控制流、产生的值、引用的地址以及执行的数据相关性。在开发匹配算法时,我们有两个目标:生成精确匹配并制作它迅速地。通过使用丰富的执行历史记录,我们能够跨多个行为维度比较程序版本。结果是一种快速、高精度的匹配算法。我们的算法首先使用单个指令历史来识别多个潜在匹配,然后通过匹配匹配指令建立的数据依赖结构来细化匹配集。为了测试我们的算法,我们尝试匹配未优化和优化程序版本的执行历史。我们的结果表明,我们的算法产生了高度准确的匹配,当用于调试优化代码的比较检查方法时,这种匹配是非常有效的。

工具书类

  1. T.Apiwattanapong,A.Orso,M.J.Harrold,“面向对象程序的差分算法”,IEEE自动化软件工程国际会议,第2-132004页。谷歌学者谷歌学者数字图书馆数字图书馆
  2. C.Collberg、C.Thomborson和D.Low,“打破抽象和非结构化数据结构”,IEEE国际计算机语言会议,第28-38页,伊利诺伊州芝加哥,1998年。谷歌学者谷歌学者数字图书馆数字图书馆
  3. D.Jackson和D.A.Ladd,“语义差异:总结修改影响的工具”,IEEE软件维护会议,第243-252页,1994年11月。谷歌学者谷歌学者数字图书馆数字图书馆
  4. C.Jaramillo、R.Gupta和M.L.Soffa,“比较检查:避免调试优化代码的方法”,第七届欧洲软件工程会议和ACM SIGSOFT第七届软件工程基础研讨会,LNCS 1687,Springer Verlag,第268-284页,法国图卢兹,1999年9月。谷歌学者谷歌学者数字图书馆数字图书馆
  5. C.Jaramillo、R.Gupta和M.L.Soffa,“通过比较检查调试和测试优化器”,《编译器优化与编译器验证国际研讨会》,《理论计算机科学电子笔记》第65期(2002年),与ETAPS联合举办,法国格勒诺布尔,2002年4月。谷歌学者谷歌学者
  6. R.Komondoor和S.Horwitz,“语义保留过程提取”,第27届ACM SIGPLAN-SIGACT编程语言原理,第155-1692000页。谷歌学者谷歌学者数字图书馆数字图书馆
  7. J.R.Larus和E.Schnarr,“EEL:独立于机器的可执行编辑”,SIGPLAN编程语言设计与实现会议,第291-300页,1995年。谷歌学者谷歌学者数字图书馆数字图书馆
  8. J.Laski和W.Szermer,“程序修改的识别及其在软件维护中的应用”,IEEE软件维护会议,第282-290页,1992年11月。谷歌学者谷歌学者
  9. E.W.Myers,“O(ND)差分算法及其变化”,《算法》,1(2):251--2661986年。谷歌学者谷歌学者交叉引用交叉引用
  10. T.Reps、T.Ball、M.Das和J.Larus,“2000年问题应用程序维护中程序剖析的使用”,第六届欧洲软件工程会议和ACM SIGSOFT第五届软件工程基础研讨会,第432-449页,1997年。谷歌学者谷歌学者数字图书馆数字图书馆
  11. A.Srivastava和A.Eustace,“ATOM-构建定制程序分析工具的系统”,SIGPLAN编程语言设计与实现会议,第196-205页,1994年。谷歌学者谷歌学者数字图书馆数字图书馆
  12. Z.Wang、K.Pierce和S.McFarling,“BMAT-过时配置文件传播的二进制匹配工具”,《指令级并行性杂志》,2000年5月2日。谷歌学者谷歌学者
  13. C.Wang、J.Davidson、J.hill和J.Knight,“基于软件的生存机制保护”,可靠系统和网络国际会议,第193-202页,瑞典哥德堡,2001年7月。谷歌学者谷歌学者数字图书馆数字图书馆
  14. N.Wilde,“使用软件侦察加快重用和维护”,技术报告SERC-TR-75F,SERC,佛罗里达大学,CIS部门,佛罗里达州盖恩斯维尔,1994年7月。谷歌学者谷歌学者
  15. A.Zeller,“从计算机程序中隔离因果链”,ACM SIGSOFT第十届软件工程基础国际研讨会,南卡罗来纳州查尔斯顿,2002年11月。谷歌学者谷歌学者数字图书馆数字图书馆
  16. X.Zhang和R.Gupta,“整体执行轨迹”,IEEE/ACM第37届微体系结构国际研讨会,俄勒冈波特兰,2004年12月。谷歌学者谷歌学者数字图书馆数字图书馆
  17. Trimaran编译器研究基础设施。1997年11月。谷歌学者谷歌学者
  18. S.S.穆奇尼克。《高级编译器设计与实现》,Morgan Kaufmann,1997年。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. 匹配程序版本的执行历史

      建议

      评论

      登录选项

      检查您是否可以通过登录凭据或您的机构访问本文。

      登录

      完全访问权限

      • 发布于

        封面图片ACM会议
        ESEC/FSE-13:与第13届ACM SIGSOFT软件工程基础国际研讨会联合举行的第10届欧洲软件工程会议记录
        2005年9月
        402页
        国际标准图书编号:1595930140
        内政部:10.1145/1081706
        • 封面图片ACM SIGSOFT软件工程说明
          ACM SIGSOFT软件工程说明 第30卷第5期
          2005年9月
          462页
          国际标准编号:0163-5948
          内政部:10.1145/1095430
          期刊目录

        版权所有©2005 ACM

        如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。向请求权限[电子邮件保护]

        出版商

        计算机协会

        美国纽约州纽约市

        出版历史

        • 出版:2005年9月1日

        权限

        请求有关此文章的权限。

        请求权限

        检查更新

        限定符

        • 第条

        接受率

        总体验收率112属于543提交文件,21%

        即将召开的会议

        24年FSE
        第32届ACM国际软件工程基础会议
        2024年7月15日至19日
        伊波朱卡(伯南布哥),巴西

      PDF格式

      以PDF文件查看或下载。

      PDF格式

      电子阅读器

      使用eReader在线查看。

      电子阅读器