ACM Home Page
Please provide us with feedback. Feedback
Type inference for atomicity
Full text PdfPdf (168 KB)
Source Types In Languages Design And Implementation archive
Proceedings of the 2005 ACM SIGPLAN international workshop on Types in languages design and implementation table of contents
Long Beach, California, USA
Pages: 47 - 58  
Year of Publication: 2005
ISBN:1-58113-999-3
Authors
Cormac Flanagan  University of California, Santa Cruz, Santa Cruz, CA
Stephen N. Freund  Williams College, Williamstown, MA
Marina Lifshin  Williams College, Williamstown, MA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 34,   Citation Count: 14
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1040294.1040299
What is a DOI?

ABSTRACT

Atomicity is a fundamental correctness property in multithreaded programs. This paper presents an algorithm for verifying atomicity via type inference. The underlying type system supports guarded, write-guarded, and unguarded fields, as well as thread-local data, parameterized classes and methods, and protected locks. We describe an implementation of this algorithm for Java and discuss its performance and usability on benchmarks totaling sixty thousand lines of code.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
R. Agarwal and S. D. Stoller. Type inference for parameterized race-free Java. In Proc. Conference on Verification, Model Checking, and Abstract Interpretation, pages 149--160, 2004.
 
2
3
4
 
5
D. Bruening. Systematic testing of multithreaded Java programs. Master's thesis, Massachusetts Institute of Technology, 1999.
 
6
 
7
8
 
9
10
11
 
12
C. Flanagan and S. N. Freund. Type inference against races. In Static Analysis Symposium, pages 116--132, 2004.
13
 
14
C. Flanagan and S. Qadeer. Transactions for software model checking. In Proc. Workshop on Software Model Checking, 2003.
15
16
17
 
18
S. N. Freund and S. Qadeer. Checking concise specifications for multithreaded software. In Journal of Object Technology, volume 3(6), pages 81--101, 2004.
 
19
20
21
 
22
J. Hatcliff, Robby, and M. B. Dwyer. Verifying atomicity specifications for concurrent object-oriented software using model-checking. In Proc. International Conference on Verification, Model Checking and Abstract Interpretation, 2004.
23
 
24
Java Grande Forum. Java Grande benchmark suite. Available from http://www.javagrande.org/, 2003.
 
25
D. Lea. util.concurrent package, release 1.3.4, 2004. Available at http://gee.cs.oswego.edu/dl/.
26
27
28
29
 
30
31
 
32
A. Sasturkar, R. Agarwal, and S. D. Stoller. Extended parameterized Atomic Java, 2004. Submitted for publication.
 
33
Standard Performance Evaluation Corporation. SPEC Benchmarks. Available from http://www.spec.org/, 2004.
 
34
 
35
J.-P. Talpin and P. Jouvelot. Polymorphic type, region and effect inference. Journal of Functional Programming, 2(3):245--271, 1992.
36
37
 
38
L. Wang and S. D. Stoller. Runtime analysis of atomicity for multi-threaded programs. Technical Report DAR 04-14, Computer Science Department, SUNY Stony Brook, July 2004. A preliminary version appeared in Proc. Workshop on Runtime Verification, 2003.
 
39
A. Welc, S. Jagannathan, and A. L. Hosking. Transactional monitors for concurrent objects. In Proc. European Conference on Object-Oriented Programming, 2004.

CITED BY  15

Collaborative Colleagues:
Cormac Flanagan: colleagues
Stephen N. Freund: colleagues
Marina Lifshin: colleagues