Please use this identifier to cite or link to this item:
Authors: Higham, Lisa
Kawash, Jalal
Keywords: Computer Science
Issue Date: 1-Apr-1998
Abstract: In Java, some memory updates are necessarily visible to some threads but never to others. A definition of Java memory consistency must take this fact into consideration to capture the semantics of non-terminating systems, such as a Java operating system. This paper presents a programmer-centered formal definition of Java memory behavior that captures those semantics. Our definition is employed to prove that it is impossible to provide fundamental process coordination in Java, such as critical sections and producer/consumer coordination, without the use of the synchronized and volatile constructs. However, we show that a weaker form of synchronization suffices to solve some of these problems in Java.
Appears in Collections:Higham, Lisa
Kawash, Jalal

Files in This Item:
File Description SizeFormat 
1998-622-13.pdf150.56 kBAdobe PDFView/Open
1998-622-13.ps236.12 kBPostscriptView/Open

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.