An operational happens-before memory model

作者:Yang Zhang, Xinyu Feng

摘要

Happens-before memory model (HMM) is used as the basis of Java memory model (JMM). Although HMM itself is simple, some complex axioms have to be introduced in JMM to prevent the causality loop, which causes absurd out-of-thin-air reads that may break the type safety and security guarantee of Java. The resulting JMM is complex and difficult to understand. It also has many anti-intuitive behaviors, as demonstrated by the “ugly examples” by Aspinall and Ševčík [1]. Furthermore, HMM (and JMM) specifies only what execution traces are acceptable, but says nothing about how these traces are generated. This gap makes it difficult for static reasoning about programs.

论文关键词:relaxed memory model, happens-before, operatonal semantics, DRF-Guarantee, JMM

论文评审过程:

论文官网地址:https://doi.org/10.1007/s11704-015-4492-4