Timed C: An Extension to the C Programming Language for Real-Time Systems
Timed C: An Extension to the C Programming Language for Real-Time Systems
复制标题
定时 C:实时系统 C 编程语言的扩展
DOI:
--
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
David Broman
中科院分区:
文献类型:
--
作者:
Saranya Natarajan;David Broman
The design and implementation of real-time systems require that both the logical and the temporal behavior are correct. There exist several specialized languages and tools that use the notion of logical time, as well as industrial strength languages such as Ada and RTJS that incorporate direct handling of real time. Although these languages and tools have shown to be good alternatives for safety-critical systems, most commodity real-time and embedded systems are today implemented in the standard C programming language. Such systems are typically targeting proprietary bare-metal platforms, standard POSIX compliant platforms, or open-source operating systems. It is, however, error prone to develop large, reliable, and portable systems based on these APIs. In this paper, we present an extension to the C programming language, called Timed C, with a minimal set of language primitives, and show how a retargetable source-to-source compiler can be used to compile and execute simple, expressive, and portable programs. To evaluate our approach, we conduct a case study of a CubeSat satellite. We implement the core timing aspects in Timed C, and show portability by compiling on-board software to both flight hardware, and to low-cost experimental platforms.