arXivDaily arXiv每日学术速递 周一至周五更新
arXiv cs/0101007cs.SEcs.PL
收藏

基于事件跟踪计算的C程序设计语言断言检查器

Assertion checker for the C programming language based on computations over event traces

Mikhail Auguston

摘要:

提出了一种基于精确程序行为模型的软件测试和调试自动化工具的开发方法。程序行为模型被定义为一组事件(事件跟踪),事件上有两个基本的二元关系-优先级和包含,并表示动作之间的时间关系。开发了一种用于事件跟踪计算的语言,为断言检查、调试查询、执行配置文件和性能测量提供了基础。该方法是非破坏性的,因为断言文本与目标程序源代码分离,可以独立维护。断言可以捕获特定目标程序的动态属性,并且可以形式化典型错误和调试策略的一般知识。事件语法通过目标程序自动插装为断言语言实现提供了可靠的基础。一个实现架构和初步的实验与原型断言检查的C程序设计语言进行了讨论。

英文摘要:

This paper suggests an approach to the development of software testing and debugging automation tools based on precise program behavior models. The program behavior model is defined as a set of events (event trace) with two basic binary relations over events -- precedence and inclusion, and represents the temporal relationship between actions. A language for the computations over event traces is developed that provides a basis for assertion checking, debugging queries, execution profiles, and performance measurements. The approach is nondestructive, since assertion texts are separated from the target program source code and can be maintained independently. Assertions can capture the dynamic properties of a particular target program and can formalize the general knowledge of typical bugs and debugging strategies. An event grammar provides a sound basis for assertion language implementation via target program automatic instrumentation. An implementation architecture and preliminary experiments with a prototype assertion checker for the C programming language are discussed.

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

↑