Distributed Algorithms: A Case Study of the Java Memory Model

Gespeichert in:
Bibliographische Detailangaben
Titel: Distributed Algorithms: A Case Study of the Java Memory Model
Autoren: Matko Botinčan, Paola Glavan, Davor Runje
Weitere Verfasser: The Pennsylvania State University CiteSeerX Archives
Quelle: http://www.fsb.hr/~drunje/papers/asm2007-mm.pdf.
Bestand: CiteSeerX
Schlagwörter: Java memory model, distributed algorithms, abstract state machines
Beschreibung: The goal of this paper is to give a mathematically precise specification of the Java memory model and discuss its interpretation in the ASM context. We have refactored the original specification in order to clearly stipulate how it conditions the behavior of the environment. We show how each thread in a multithreaded Java program can be seen as an ordinary interactive small-step algorithm, and, consequently, how the Java program gives rise to a distributed ordinary interactive smallstep ASM. Due to rather relaxed conditions on the environment imposed by the Java memory model, runs of such ASM may, however, exhibit behavior that is impossible to be observed in sequentially consistent settings. We hope that notions of run and environment capturing this kind of behavior will serve as a helpful insight for the theory of distributed algorithms developed so far.
Publikationsart: text
Dateibeschreibung: application/pdf
Sprache: English
Relation: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.135.7448
Verfügbarkeit: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.135.7448
http://www.fsb.hr/~drunje/papers/asm2007-mm.pdf
Rights: Metadata may be used without restrictions as long as the oai identifier remains attached to it.
Dokumentencode: edsbas.F2A2BE05
Datenbank: BASE
Beschreibung
Abstract:The goal of this paper is to give a mathematically precise specification of the Java memory model and discuss its interpretation in the ASM context. We have refactored the original specification in order to clearly stipulate how it conditions the behavior of the environment. We show how each thread in a multithreaded Java program can be seen as an ordinary interactive small-step algorithm, and, consequently, how the Java program gives rise to a distributed ordinary interactive smallstep ASM. Due to rather relaxed conditions on the environment imposed by the Java memory model, runs of such ASM may, however, exhibit behavior that is impossible to be observed in sequentially consistent settings. We hope that notions of run and environment capturing this kind of behavior will serve as a helpful insight for the theory of distributed algorithms developed so far.