arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1404.4100cs.SE
收藏

基于崩溃堆栈痕迹定位崩溃故障

Locating Crashing Faults based on Crash Stack Traces

Liang Gong, Hongyu Zhang, Hyunmin Seo, Sunghun Kim

摘要:

软件崩溃是由于其复杂性的增加。一旦发生崩溃,崩溃报告可以发送给软件开发人员,以便在用户许可下进行调查。由于大量的崩溃报告和有限的信息,调试崩溃通常是一项繁琐且劳动密集型的任务。在本文中,我们提出了一个统计故障定位框架,以帮助开发人员找到包含崩溃故障的功能。我们根据崩溃堆栈生成失败跟踪的执行跟踪,以及正常执行的传递跟踪。我们形成程序谱相结合产生的通过和失败的痕迹,然后应用统计故障定位技术,如Ochiai定位崩溃故障。我们还提出了两个算法来提高故障定位性能。我们使用现实世界的Firefox崩溃报告数据来评估我们的方法。结果表明,我们的方法的性能是有前途的。我们的方法允许开发人员通过检查光谱中仅5%的Firefox 3.6函数来定位63.9%的崩溃故障。

英文摘要:

Software crashes due to its increasing complexity. Once a crash happens, a crash report could be sent to software developers for investigation upon user permission. Because of the large number of crash reports and limited information, debugging for crashes is often a tedious and labor-intensive task. In this paper, we propose a statistical fault localization framework to help developers locate functions that contain crashing faults. We generate the execution traces for the failing traces based on the crash stack, and the passing traces from normal executions. We form program spectra by combining generated passing and failing trace, and then apply statistical fault localization techniques such as Ochiai to locate the crashing faults. We also propose two heuristics to improve the fault localization performance. We evaluate our approach using the real-world Firefox crash report data. The results show that the performance of our method is promising. Our approach permits developers to locate 63.9% crashing faults by examining only 5% Firefox 3.6 functions in the spectra.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑