Task interaction graphs for concurrency analysis

A representation for concurrent programs, called task inter- action graphs, is presented. Task interaction graphs divide a program into maximal sequential regions connected by edges representing task interactions. This representation is illustrated and it is shown how it can be used to create concurrency graph representations that are much smaller than those created from control flow graph representations. Both task interaction graphs and their corresponding concurrency graphs facilitate analysis of concurrent programs. Some analyses and optimizations on these representations are also described.

[1]  Richard N. Taylor,et al.  Anomaly Detection in Concurrent Software by Static Data Flow Analysis , 1980, IEEE Transactions on Software Engineering.

[2]  Lori A. Clarke,et al.  Task Interaction Graph: An Intermediate Representation for Concurrency , 1988 .

[3]  David Luckham,et al.  Debugging Ada Tasking Programs , 1985, IEEE Software.

[4]  Richard N. Taylor,et al.  Combining Static Concurrency Analysis with Symbolic Execution , 1988, IEEE Trans. Software Eng..

[5]  Rami R. Razouk,et al.  Interactive State-Space Analysis of Concurrent Systems , 1987, IEEE Transactions on Software Engineering.

[6]  George S. Avrunin,et al.  Constrained expressions: Adding analysis capabilities to design methods for concurrent software systems , 1986, IEEE Transactions on Software Engineering.

[7]  Richard N. Taylor,et al.  A general-purpose algorithm for analyzing concurrent programs , 1983, CACM.

[8]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[9]  Raymond E. Miller,et al.  Implicit Computation of Synchronization Primitives , 1979, Inf. Process. Lett..

[10]  Sol M. Shatz,et al.  A petri net framework for automated static analysis of Ada tasking behavior , 1988, J. Syst. Softw..

[11]  William E. Riddle,et al.  Anomaly Detection in Concurrent Programs , 1979, ICSE.

[12]  Per Brinch Hansen,et al.  Distributed processes: a concurrent programming concept , 1978, CACM.

[13]  R. A. Kemmerer,et al.  An interleaving symbolic execution approach for the formal verification of Ada programs with tasking , 1988, [Proceedings 1988] The Third International IEEE Conference on Ada Applications and Environments.

[14]  Laura K. Dillon Symbolic execution-based verification of Ada tasking programs , 1988, [Proceedings 1988] The Third International IEEE Conference on Ada Applications and Environments.