A formalization of Java’s concurrent access modes

A formalization of Java’s concurrent access modes
复制标题

Java 并发访问模式的形式化

DOI:
10.1145/3360568
复制
发表时间:
2019
影响因子:
--
通讯作者:
Palsberg, Jens
Palsberg, Jens
中科院分区:
--
文献类型:
--
作者:
Bender, John;Palsberg, Jens

文献摘要

参考文献

被引文献

相似文献

Java 的内存模型最近进行了更新,并通过新的访问模式进行了扩展。这些访问模式的随附文档旨在对 Java 编译器必须强制执行的程序行为提供强有力的保证,但文档常常不清楚。这使得预期的程序行为变得模糊,阻碍了对关键设计决策的讨论,并且无法证明有关访问模式语义的一般属性。在本文中,我们提出了 Java 访问模式的第一个形式化。我们使用 Herd 建模工具为所有模式构建了一个公理模型。这使我们能够对有关示例程序行为的问题给出精确的答案,称为石蕊测试。我们使用现有研究中的大量石蕊测试验证了我们的模型,这有助于阐明与其他记忆模型的关系。我们还在 Coq 中对语义进行了建模,并证明了几个一般定理,包括 DRF 保证,它表示如果程序正确同步,那么它将表现出顺序一致的行为。最后,我们使用我们的模型来证明对同一位置的写入之间的偏序的不寻常设计选择在任何程序中都是不可观察到的。
Java's memory model was recently updated and expanded with new access modes. The accompanying documentation for these access modes is intended to make strong guarantees about program behavior that the Java compiler must enforce, yet the documentation is frequently unclear. This makes the intended program behavior ambiguous, impedes discussion of key design decisions, and makes it impossible to prove general properties about the semantics of the access modes.In this paper we present the first formalization of Java's access modes. We have constructed an axiomatic model for all of the modes using the Herd modeling tool. This allows us to give precise answers to questions about the behavior of example programs, called litmus tests. We have validated our model using a large suite of litmus tests from existing research which helps to shed light on the relationship with other memory models. We have also modeled the semantics in Coq and proven several general theorems including a DRF guarantee, which says that if a program is properly synchronized then it will exhibit sequentially consistent behavior. Finally, we use our model to prove that the unusual design choice of a partial order among writes to the same location is unobservable in any program.
彻底修改 C11 和 OpenCL 中的 SC 原子
DOI: 10.1145/2837614.2837637
发表时间: 2016
期刊: --
影响因子: --
作者:
Batty M
通讯作者: Batty M
同步 C/C 和 POWER
DOI: 10.1145/2254064.2254102
发表时间: 2012
期刊: --
影响因子: --
作者:
Sarkar S
通讯作者: Sarkar S
声明性栅栏插入
DOI: 10.1145/2814270.2814318
发表时间: 2015
期刊: Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications
影响因子: --
作者:
John Bender;M. Lesani;J. Palsberg
通讯作者: J. Palsberg
DOI: 10.1145/3276506
发表时间: 2018
影响因子: --
作者:
Ou, Peizhao;Demsky, Brian
通讯作者: Demsky, Brian
放松记忆的微积分
DOI: 10.1145/2775051.2676984
发表时间: 2015
影响因子: --
作者:
Karl Crary;Michael J. Sullivan
通讯作者: Michael J. Sullivan