The Sparse Synchronous Model on Real Hardware

被引:1
作者
Hui, John [1 ]
Edwards, Stephen A. [1 ]
机构
[1] Columbia Univ, 500 West 120 St,MC0401, New York, NY 10027 USA
关键词
Real time systems; concurrency control; computer languages; timing; SEMANTICS;
D O I
10.1145/3572920
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We present the Sparse Synchronous model (SSM) of computation, which allows a programmer to specify software timing more precisely than the traditional "heartbeat" of mainstream operating systems or the synchronous languages. SSM is a mix of semantics inspired by discrete event simulators and the synchronous languages designed to operate in resource-constrained environments such as microcontrollers. SSM provides precise timing prescriptions, concurrency, and determinism. We implement SSM in SSML, a toy language along with a runtime system that includes a scheduler, memory manager, and an interface that works with a real-time operating system to keep the model synchronized with the real world. Experimentally, we find our implementation is able to perform jitter-free I/O in the 10s of kHz on a microcontroller.
引用
收藏
页数:30
相关论文
共 33 条
  • [1] Andalam S., 2010, 2010 8th IEEE/ACM International Conference on Formal Methods and Models for Codesign (MEMOCODE 2010), P159, DOI 10.1109/MEMCOD.2010.5558636
  • [2] Appel Andrew W., 1996, J. Funct. Program., V6, P47
  • [3] Bender MA, 2002, LECT NOTES COMPUT SC, V2461, P152
  • [4] The synchronous languages 12 years later
    Benveniste, A
    Caspi, P
    Edwards, SA
    Halbwachs, N
    Le Guernic, P
    De Simone, R
    [J]. PROCEEDINGS OF THE IEEE, 2003, 91 (01) : 64 - 83
  • [5] THE ESTEREL SYNCHRONOUS PROGRAMMING LANGUAGE - DESIGN, SEMANTICS, IMPLEMENTATION
    BERRY, G
    GONTHIER, G
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 1992, 19 (02) : 87 - 152
  • [6] Bourke Timothy, 2009, P INT OP WORKSH SYNC, P55, DOI [10.4230/DagSemProc.09481.1, DOI 10.4230/DAGSEMPROC.09481.1]
  • [7] FairThreads: mixing cooperative and preemptive threads in C
    Boussinot, F
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2006, 18 (05) : 445 - 469
  • [8] REACTIVE C - AN EXTENSION OF C TO PROGRAM REACTIVE SYSTEMS
    BOUSSINOT, F
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 1991, 21 (04) : 401 - 428
  • [9] Boussinot Frederic, 2010, Safe Reactive Programming: The FunLoft Language
  • [10] Crank Erik, 1991, P PRINC PROGR LANG P, DOI [10.1145/99583.99616, DOI 10.1145/99583.99616]