ACM Home Page
Please provide us with feedback. Feedback
Core semantics of multithreaded Java
Full text PdfPdf (816 KB)
Source Java Grande Conference archive
Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande table of contents
Palo Alto, California, United States
Pages: 29 - 38  
Year of Publication: 2001
ISBN:1-58113-359-6
Authors
Jeremy Manson  Institute for Advanced Computer Science and Dept. of Computer Science, Univ. of Maryland, College Park
William Pugh  Institute for Advanced Computer Science and Dept. of Computer Science, Univ. of Maryland, College Park
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 40,   Citation Count: 6
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

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

ABSTRACT

Java has integrated multithreading to a far greater extent than most programming languages. It is also one of the only languages that specifies and requires safety guarantees for improperly synchronized programs. It turns out that understanding these issues is far more subtle and difficult than was previously thought. The existing specification makes guarantees that prohibit standard and proposed compiler optimizations; it also omits guarantees that are necessary for safe execution of much existing code. Some guarantees that are made (e.g., type safety) raise tricky implementation issues when running unsynchronized code on SMPs with weak memory models.

This paper reviews those issues. It proposes a new core semantics for Java that allows for aggressive compiler optimization and addresses the safety and multithreading issues. Due to space constraints, certain side issues are addressed only in the full version of the semantics [8].


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
 
2
G. Gao and V. Sarkar. Location consistency - a new memory model and cache consistency protocol. Technical Report 16, CAPSL, Univ. of Deleware, Feb. 1998.
3
 
4
 
5
The Java memory model. Mailing list and web page. http://www.cs.umd.edu/~pugh/java/memoryModel.
 
6
7
 
8
J. Manson and W. Pugh. Semantics of multithreaded java. Technical Report CS-TR-4215, Dept. of Computer Science, University of Maryland, College Park, Mar. 2001.
9
 
10
W. Pugh. The double checked locking is broken declaration. http://www.cs.umd.edu/ users/ pugh/java/ memoryModel/ DoubleCheckedLocking.html, July 2000.
 
11
W. Pugh. The Java memory model is fatally flawed. Concurrency: Practice and Experience, 12(1):1-11, 2000.


Collaborative Colleagues:
Jeremy Manson: colleagues
William Pugh: colleagues