Please note PRISM will be upgraded March 27-28 to make the submission process better for you! No new content can be added during this time. We apologize for the inconvenience.
JAVA: MEMORY CONSISTENCY AND PROCESS COORDINATION
|dc.description.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.||eng|
|dc.title||JAVA: MEMORY CONSISTENCY AND PROCESS COORDINATION||eng|
|dc.publisher.corporate||University of Calgary||eng|
|dc.description.notes||We are currently acquiring citations for the work deposited into this collection. We recognize the distribution rights of this item may have been assigned to another entity, other than the author(s) of the work.If you can provide the citation for this work or you think you own the distribution rights to this work please contact the Institutional Repository Administrator at firstname.lastname@example.org||eng|