A REPRESENTATION FOR CONCURRENT PROGRAMS, CALLED `TASK INTERACTION GRAPHS'', IS PRESENTED. TASK INTERACTION GRAPHS DIVIDE A PROGRAM INTO MAXIMAL SEQUENTIAL REGIONS, WHICH ARE CONNECTED BY EDGES REPRESENTING TASK INTERACTIONS. THE CONSTRUCTION OF TASK INTERACTION GRAPHS FOR A NUMBER OF COMMON PROGRAMMING LANGUAGE FEATURES, INCLUDING TASKS AND PROCEDURES, IS DESCRIBED AND TECHNIQUES FOR HANDLING SHARED VARIABLES ARE CONSIDERED. FORMAL DESCRIPTIONS OF THE GRAPHS FOR EACH OF THESE FEATURES IS PRESENTED ALONG WITH SEVERAL EXAMPLES. BOTH TASK INTERACTION GRAPHS AND THEIR CORRESPONDING CONCURRENCY GRAPHS FACILITATE ANALYSIS OF CONCURRENT PROGRAMS. SOME ANALYSES AND OPTIMIZATIONS ON THESE REPRESENTA- TIONS ARE ALSO DESCRIBED.
Cited By
- Duesterwald E and Soffa M Concurrency analysis in the presence of procedures using a data-flow framework Proceedings of the symposium on Testing, analysis, and verification, (36-48)
- Long D and Clarke L Task interaction graphs for concurrency analysis Proceedings of the 11th international conference on Software engineering, (44-52)
Recommendations
Representation characterizations of chordal bipartite graphs
A bipartite graph is chordal bipartite if it does not contain an induced cycle of length at least six. We give three representation characterizations of chordal bipartite graphs. More precisely, we show that a bipartite graph is chordal bipartite if and ...