Abstract
The cardiac pacemaker has emerged as a case study for evaluating the effectiveness of techniques for the verification and design of embedded systems with complex control requirements. This paper reports on the experiences of using this case study to evaluate the concurrency model of two programming language subsets that target safety-critical systems development: Safety-Critical Java (SCJ), a subset of the Real-Time Specification for Java, and Ravenscar Ada, a subset of the real-time support provided by Ada 2005. Our conclusions are that for SCJ, the lack of explicit support for watch-dog timers results in a software architecture where the time at which significant events occur must be saved, and polling must be used to detect their absence. Although this results in a less efficient system, the scheduling implications for the resulting software architecture are clear. In contrast, Ravenscar Ada’s support for primitive timing events allow the construction of a highly optimized reactive solution. However, the timing properties of this solution are a little more complex to determine. Furthermore, the Ada solution requires a redundant task.
Original language | English |
---|---|
Pages | 62-71 |
Number of pages | 10 |
DOIs | |
Publication status | Published - Oct 2012 |
Event | JTRES '12, The 10th International Workshop on Java Technologies for Real-time and Embedded Systems - Copenhagen, Denmark Duration: 24 Oct 2012 → 26 Oct 2012 |
Conference
Conference | JTRES '12, The 10th International Workshop on Java Technologies for Real-time and Embedded Systems |
---|---|
Country/Territory | Denmark |
City | Copenhagen |
Period | 24/10/12 → 26/10/12 |