Authors
Jeremy Manson, William Pugh, Sarita V Adve
Publication date
2005/1/12
Journal
ACM SIGPLAN Notices
Volume
40
Issue
1
Pages
378-391
Publisher
ACM
Description
This paper describes the new Java memory model, which has been revised as part of Java 5.0. The model specifies the legal behaviors for a multithreaded program; it defines the semantics of multithreaded Java programs and partially determines legal implementations of Java virtual machines and compilers.The new Java model provides a simple interface for correctly synchronized programs -- it guarantees sequential consistency to data-race-free programs. Its novel contribution is requiring that the behavior of incorrectly synchronized programs be bounded by a well defined notion of causality. The causality requirement is strong enough to respect the safety and security properties of Java and weak enough to allow standard compiler and hardware optimizations. To our knowledge, other models are either too weak because they do not provide for sufficient safety/security, or are too strong because they rely on a …
Total citations
Scholar articles
J Manson, W Pugh, SV Adve - ACM SIGPLAN Notices, 2005