ACM Home Page
Please provide us with feedback. Feedback
Scheduling-independent threads and exceptions in SHIM
Full text PdfPdf (168 KB)
Source International Conference On Embedded Software archive
Proceedings of the 6th ACM & IEEE International conference on Embedded software table of contents
Seoul, Korea
SESSION: Concurrent real-time programming table of contents
Pages: 142 - 151  
Year of Publication: 2006
ISBN:1-59593-542-8
Authors
Olivier Tardieu  Columbia University, New York
Stephen A. Edwards  Columbia University, New York
Sponsors
SIGDA: ACM Special Interest Group on Design Automation
ACM: Association for Computing Machinery
SIGBED: ACM Special Interest Group on Embedded Systems
SIGMICRO: ACM Special Interest Group on Microarchitectural Research and Processing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 20,   Citation Count: 4
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1176887.1176908
What is a DOI?

ABSTRACT

Concurrent programming languages should be a good fit for embedded systems because they match the intrinsic parallelism of their architectures and environments. Unfortunately, typical concurrent programming formalisms are prone to races and nondeterminism, despite the presence of mechanisms such as monitors.In this paper, we propose SHIM, the core of a deterministic concurrent language, meaning the behavior of a program is independent of the scheduling of concurrent operations. SHIM does not sacrifice power or flexibility to achieve this determinism. It supports both synchronous and asynchronous paradigms-loosely and tightly synchronized threads-the dynamic creation of threads and shared variables, recursive procedures, and exceptions.We illustrate our programming model with examples including breadth-first-search algorithms and pipelines. By construction, they are race-free. We provide the formal semantics of SHIM and a pre-liminary implementation.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
C. Artho, K. Havelund, and A. Biere. High-level data races. In Proceedings of the Workshop on Verification and Validation of Enterprise Information Systems (VVEIS), pages 82--93, Angers, France, Apr. 2003.
3
 
4
A. Benveniste and G. Berry. The synchronous approach to reactive real-time systems. Proceedings of the IEEE, 79(9):1270--1282, Sept. 1991.
 
5
A. Benveniste, P. Caspi, S. A. Edwards, N. Halbwachs, P. L. Guernic, and R. de Simone. The synchronous languages 12 years later. Proceedings of the IEEE, 91(1):64--83, Jan. 2003.
 
6
 
7
 
8
F. Boussinot. FairThreads: mixing cooperative and preemptive threads in C. RR 5039, INRIA, 2003.
9
 
10
P. Brinch Hansen. The programming language Concurrent-Pascal. IEEE Transactions on Software Engineering, 1(2):199--207, June 1975.
11
 
12
M. Burrows, K. Rustan, and M. Leino. Finding stale-value errors in concurrent programs. Technical Report 2002-004, Systems Research Center, Compaq, May 2002.
13
14
15
 
16
S. A. Edwards and O. Tardieu. SHIM: A deterministic model for heterogeneous embedded systems. IEEE Transactions on Very Large Scale Integrated (VLSI) Systems, 2006. To appear.
17
18
19
 
20
 
21
22
 
23
INMOS Limited. occam 2 Reference Manual. Prentice Hall, 1988.
 
24
 
25
G. Kahn. The semantics of a simple language for parallel programming. In Information Processing 74: Proceedings of IFIP Congress 74, pages 471--475, Stockholm, Sweden, Aug. 1974. North-Holland.
 
26
27
 
28
 
29
G. D. Plotkin. A structural approach to operational semantics. Technical Report DAIMI FN-19, Aarhus University, Åarhus, Denmark, 1981.
30
 
31
The Coq Development Team. The Coq Proof Assistant Reference Manual. INRIA. http://coq.inria.fr/doc/main.html.
32


Collaborative Colleagues:
Olivier Tardieu: colleagues
Stephen A. Edwards: colleagues