High-level Programming of Embedded Hard Real-Time Devices
| Citations: | 1 - 0 self |
BibTeX
@MISC{Pizlo_high-levelprogramming,
author = {Filip Pizlo and Lukasz Ziarek and Ethan Blanton and Petr Maj and Jan Vitek},
title = {High-level Programming of Embedded Hard Real-Time Devices},
year = {}
}
OpenURL
Abstract
While managed languages such as C # and Java have become quite popular in enterprise computing, they are still considered unsuitable for hard real-time systems. In particular, the presence of garbage collection has been a sore point for their acceptance for low-level system programming tasks. Realtime extensions to these languages have the dubious distinction of, at the same time, eschewing the benefits of highlevel programming and failing to offer competitive performance. The goal of our research is to explore the limitations of high-level managed languages for real-time systems programming. To this end we target a real-world embedded platform, the LEON3 architecture running the RTEMS real-time operating system, and demonstrate the feasibility of writing garbage collected code in critical parts of embedded systems. We show that Java with a concurrent, real-time garbage collector, can have throughput close to that of C programs and comes within 10 % in the worst observed case on realistic benchmark. We provide a detailed breakdown of the costs of Java features and their execution times and compare to real-time and throughput-optimized commercial Java virtual machines.







