针对并发程序错误中涉及到的多变量原子性违例检测问题,提出一种动态检测算法。通过计算共享变量间的距离,推测变量之间的相关性,利用相关联的变量关系检测原子性违例错误,确定原子区域的挖掘方法。实验结果表明,该算法能有效挖掘程序中的相关变量,并检测程序中涉及到的多变量原子性违例错误。
This paper proposes a novel dynamic detection algorithm to detect multi-variable atomicity violation without consulting atomicity specification or annotation. It defines different dimensions of distances among shared memory, and uses the associated variable relationship to detect the atoms violation mistakes, then infers the correlations through them to get the atomic regions. Experimental results show that this algorithm can get the related variables, and test the procedure which involves atomic violations mistakes of multi-variable.