Rewriting Semantics and Analysis of Concurrency Features for a C-like Language

被引:1
|
作者
Serrbanuta, Traian Florin [1 ]
机构
[1] Univ Bucharest, Dept Comp Sci, Bucharest, Romania
关键词
Runtime verification; tools; datarace; deadlock; Peterson's mutual exclusion algoriithm;
D O I
10.1016/j.entcs.2014.05.009
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper shows how one can easily transform K definitions of programming languages into runtime verification tools. To increase the confidence that these runtime verification tools can be used for testing real-world programs, the paper uses KERNELC, a subset of the C programming language containing functions, memory allocation, pointer arithmetic, and input/output, which can be used to execute and test real C programs. KERNELC is extended with threads and synchronization constructs, and two concurrent semantics are derived from its sequential semantics. The first semantics, defining a sequentially consistent memory model, can be easily transformed into a runtime verification tool for checking datarace and deadlock freeness. The second semantics defines in a relatively minimal fashion a relaxed memory model based on the x86-TSO memory model. By exploring the executions of an implementation of Peterson's mutual exclusion algorithm for both definitions, it is shown that the algorithm guarantees mutual exclusion for the sequentially consistent model, but cannot guarantee it for the relaxed model, but also that by allowing fence operations in the language, the algorithm can be fixed and proven correct for the TSO model, too.
引用
收藏
页码:167 / 182
页数:16
相关论文
共 50 条
  • [31] The challenges of hardware synthesis from C-like languages
    Edwards, SA
    DESIGN, AUTOMATION AND TEST IN EUROPE CONFERENCE AND EXHIBITION, VOLS 1 AND 2, PROCEEDINGS, 2005, : 66 - 67
  • [32] Atomic data for dielectronic recombination into C-like oxygen
    Safronova, UI
    Ralchenko, Y
    Murakami, I
    Kato, T
    Kato, D
    PHYSICA SCRIPTA, 2006, 73 (02) : 143 - 159
  • [33] Dielectronic recombination of He-like to C-like iodine ions
    Watanabe, H.
    Tobiyama, H.
    Kavanagh, A. P.
    Li, Y. M.
    Nakamura, N.
    Sakaue, H. A.
    Currell, F. J.
    Ohtani, S.
    PHYSICAL REVIEW A, 2007, 75 (01):
  • [34] Concurrent Rewriting Semantics and Analysis of Asynchronous Digital Circuits
    Katelman, Michael
    Keller, Sean
    Meseguer, Jose
    REWRITING LOGIC AND ITS APPLICATIONS, 2010, 6381 : 140 - +
  • [35] The challenges of synthesizing hardware from C-like languages
    Edwards, Stephen A.
    IEEE DESIGN & TEST OF COMPUTERS, 2006, 23 (05): : 375 - 386
  • [36] DIRECT EVIDENCE OF C-LIKE FORM OF SODIUM DEOXYRIBONUCLEATE
    BRAHMS, J
    PILET, J
    LAN, TTP
    HILL, LR
    PROCEEDINGS OF THE NATIONAL ACADEMY OF SCIENCES OF THE UNITED STATES OF AMERICA, 1973, 70 (12) : 3352 - 3355
  • [37] Kα transition probabilities of C-like to F-like Al ions
    Sang, Cuicui
    Chen, Feng
    Chen, Chao
    Gou, Bingcong
    CANADIAN JOURNAL OF PHYSICS, 2015, 93 (03) : 267 - 270
  • [38] A REWRITING LOGIC SEMANTICS APPROACH TO MODULAR PROGRAM ANALYSIS
    Hills, Mark
    Rosu, Grigore
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON REWRITING TECHNIQUES AND APPLICATIONS (RTA'10), 2010, 6 : 151 - 160
  • [39] FEATURES, AKA THE SEMANTICS OF A FORMAL LANGUAGE OF MANUFACTURING
    BROWN, KN
    MCMAHON, CA
    WILLIAMS, JHS
    RESEARCH IN ENGINEERING DESIGN, 1995, 7 (03) : 151 - 172
  • [40] Semantics of a functional BSP language with imperative features
    Gava, F
    Loulergue, F
    PARALLEL COMPUTING: SOFTWARE TECHNOLOGY, ALGORITHMS, ARCHITECTURES AND APPLICATIONS, 2004, 13 : 95 - 102