An Improved Algorithm for Static Slicing of Concurrent Programs
Jianyu Xiao, Deyun Zhang · Jisuanji gongcheng · 2006
This paper proposes a algorithm for static slicing of concurrent programs.Based on the analysis of the fact that Krinke's slicing algorithm produces imprecise program slice for the program structure which has loops embedded with one or more threads,a conclusion is drawn that the reason for the impreciseness is that Krinke's data structure which threads program dependence graph and has over coarse definitions of data dependence relations between threads,The constraint puts on the execution path in concurrent program is too loose.An improved algorithm is proposed which added a new kind of data dependence relation between threads-loop carries data dependence crossing thread boundaries and introduces a new concept of regioned execution witness to further constrain the execution path.Examples show that the improved slicing algorithm could restrain the impreciseness of Krinke's.