Deterministic Concurrency: A Clock-Synchronised Shared Memory Approach
Deterministic Concurrency: A Clock-Synchronised Shared Memory Approach
复制标题
确定性并发:时钟同步共享内存方法
DOI:
10.1007/978-3-319-89884-1_4
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
Reinhard von Hanxleden
中科院分区:
文献类型:
--
作者:
Joaquín Aguado;Michael Mendler;Marc Pouzet;Partha S. Roop;Reinhard von Hanxleden
Synchronous Programming (SP) is a universal computational principle that provides deterministic concurrency. The same input sequence with the same timing always results in the same externally observable output sequence, even if the internal behaviour generates uncertainty in the scheduling of concurrent memory accesses. Consequently,SPlanguages have always been strongly founded on mathematical semantics that support formal program analysis. So far, however, communication has been constrained to a set of primitive clock-synchronised shared memory (csm) data types, such as data-flow registers, streams and signals with restricted read and write accesses that limit modularity and behavioural abstractions.This paper proposes an extension to theSPtheory which retains the advantages of deterministic concurrency, but allows communication to occur at higher levels of abstraction than currently supported bySPdata types. Our approach is as follows. To avoid data races, eachcsmtype publishes apolicy interfacefor specifying the admissibility and precedence of its access methods. Each instance of thecsmtype has to be policy-coherent, meaning it must behave deterministically under its own policy—a natural requirement if the goal is to build deterministic systems that use these types. In a policy-constructive system, all access methods can be scheduled in a policy-conformant way for all the types without deadlocking. In this paper, we show that a policy-constructive program exhibits deterministic concurrency in the sense that all policy-conformant interleavings produce the same input-output behaviour. Policies are conservative and support thecsmtypes existing in currentSPlanguages. Technically, we introduce a kernelSPlanguage that uses arbitrary policy-drivencsmtypes. A big-step fixed-point semantics for this language is developed for which we prove determinism and termination of constructive programs.
登录
查看更多内容
影响因子:
1.1
作者:
J. Aguado;M. Mendler
通讯作者:
M. Mendler
DOI:
--
发表时间:
2009
期刊:
International Conference on Embedded Software
影响因子:
--
作者:
R. V. Hanxleden
通讯作者:
R. V. Hanxleden
DOI:
--
发表时间:
1996
期刊:
影响因子:
--
作者:
F. Boussinot;G. Boumenic;Jean
通讯作者:
Jean
DOI:
--
发表时间:
2004
期刊:
ACM-SIGACT Symposium on Principles of Programming Languages
影响因子:
--
作者:
D. Caromel;L. Henrio;Bernard P. Serpette
通讯作者:
Bernard P. Serpette
DOI:
--
发表时间:
2002
期刊:
Proceedings Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. ISIRC 2002
影响因子:
--
作者:
J. Nordlander;Mark P. Jones;M. Carlsson;R. Kieburtz;A. Black
通讯作者:
A. Black