Real-time android with RTDroid

Y Yan, S Cosgrove, V Anand, A Kulkarni… - Proceedings of the 12th …, 2014 - dl.acm.org
Y Yan, S Cosgrove, V Anand, A Kulkarni, SH Konduri, SY Ko, L Ziarek
Proceedings of the 12th annual international conference on Mobile systems …, 2014dl.acm.org
This paper presents RTDroid, a variant of Android that provides predictability to Android
applications. Although there has been much interest in adopting Android in real-time
contexts, surprisingly little work has been done to examine the suitability of Android for real-
time systems. Existing work only provides solutions to traditional problems, including real-
time garbage collection at the virtual machine layer and kernel-level real-time scheduling
and resource management. While it is critical to address these issues, it is by no means …
This paper presents RTDroid, a variant of Android that provides predictability to Android applications. Although there has been much interest in adopting Android in real-time contexts, surprisingly little work has been done to examine the suitability of Android for real-time systems. Existing work only provides solutions to traditional problems, including real-time garbage collection at the virtual machine layer and kernel-level real-time scheduling and resource management. While it is critical to address these issues, it is by no means sufficient. After all, Android is a vast system that is more than a Java virtual machine and a kernel.
Thus, this paper goes beyond existing work and examines the internals of Android. We discuss the implications and challenges of adapting Android constructs and core system services for real-time and present a solution for each. Our system is unique in that it redesigns Android's internal components, replaces Android's Java VM (Dalvik) with a real-time VM, and leverages off-the-shelf real-time OSes. We demonstrate the feasibility and predictability of our solution by evaluating it on three different platforms---an x86 PC, a LEON3 embedded board, and a Nexus S smartphone. The evaluation results show that our design can successfully provide predictability to Android applications, even under heavy load.
ACM Digital Library