Compiling the pi-calculus into a Multithreaded Typed Assembly Language

被引:1
|
作者
Cogumbreiro, Tiago [1 ]
Martins, Francisco [1 ]
Vasconcelos, Vasco T. [1 ]
机构
[1] Univ Lisbon, Fac Sci, Dept Informat, Lisbon, Portugal
关键词
Pi-calculus; multithreaded assembly language; typed assembly language;
D O I
10.1016/j.entcs.2009.06.004
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
We extend a previous work on a multithreaded typed assembly language (MIL) targeted at shared memory multiprocessors, and describe the design of a type-preserving compiler from the pi-calculus into MIL. The language enforces a policy on lock usage through a typing system that also ensures race-freedom for typable programs, while allowing for typing various important concurrency patterns. Our translation to MIL generates code that is then linked to a library supporting a generic unbounded buffer monitor, variant of Hoare's bounded buffer monitor, entirely written in MIL. Such a monitor shields client code (the pi-calculus compiler in particular) from the hazardous task of direct lock manipulation, while allowing for the representation of pi-calculus channels. The compiler produces type correct MIL programs from type correct source code, generating low-contention cooperative multithreaded programs.
引用
收藏
页码:57 / 84
页数:28
相关论文
共 50 条
  • [1] Typed Event Structures and the pi-Calculus Extended Abstract
    Varacca, Daniele
    Yoshida, Nobuko
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2006, 158 (01) : 373 - 397
  • [2] Compiling C programs into a strongly typed assembly language
    Kosakai, Takahiro
    Maeda, Toshiyuki
    Yonezawa, Akinori
    ADVANCES IN COMPUTER SCIENCE - ASIAN 2007: COMPUTER AND NETWORK SECURITY, PROCEEDINGS, 2007, 4846 : 17 - 32
  • [3] An exact correspondence between a typed pi-calculus and polarised proof-nets
    Honda, Kohei
    Laurent, Olivier
    THEORETICAL COMPUTER SCIENCE, 2010, 411 (22-24) : 2223 - 2238
  • [4] Linearity and the pi-calculus
    Kobayashi, N
    Pierce, BC
    Turner, DN
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1999, 21 (05): : 914 - 947
  • [5] A Resource Analysis of the pi-calculus
    Wand, Aaron Turon Mitchell
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2011, 276 : 313 - 334
  • [6] A Chart Semantics for the Pi-Calculus
    Borgstrom, Johannes
    Gordon, Andrew D.
    Phillips, Andrew
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2008, 194 (02) : 3 - 29
  • [7] Semantic subtyping for the pi-calculus
    Castagna, Giuseppe
    De Nicola, Rocco
    Varacca, Daniele
    THEORETICAL COMPUTER SCIENCE, 2008, 398 (1-3) : 217 - 242
  • [8] Structural inclusion in the pi-calculus with replication
    Engelfriet, J
    Gelsema, T
    THEORETICAL COMPUTER SCIENCE, 2001, 258 (1-2) : 131 - 168
  • [9] Spatial and behavioral types in the pi-calculus
    Acciai, Lucia
    Boreale, Michele
    INFORMATION AND COMPUTATION, 2010, 208 (10) : 1118 - 1153
  • [10] Probabilistic pi-Calculus and Event Structures
    Varacca, Daniele
    Yoshida, Nobuko
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 190 (03) : 147 - 166