Release Time:2019-03-10 Hits:
Indexed by: Journal Article
Date of Publication: 2017-05-16
Journal: 计算机工程与设计
Volume: 38
Issue: 5
Page Number: 1264-1272
ISSN: 1000-7024
Key Words: 多线程程序;数据竞争;静态检测;XML映射模型;XQuery查询
Abstract: 通过使用词法分析和语法分析进行线程并行程序数据竞争静态检测,根据规则将源代码数据竞争相关信息映射到XML文件,解决多个线程程序因可以随机访问共享变量而导致运行结果不确定性,容易引发数据竞争等问题.通过XQuery查询语言获取XML映射模型中的数据访问信息,将信息存储于数据竞争表示层.通过竞争图生成算法建立数据竞争有向图模型,利用拓扑排序检测数据竞争的具体位置,获取所有竞争序列.实验结果表明,该检测方法能够准确快速地发现多线程程序中的数据竞争并在源文件中进行准确定位.