skip to main content
10.1145/2594368.2594381acmconferencesArticle/Chapter ViewAbstractPublication PagesmobisysConference Proceedingsconference-collections
research-article

Real-time android with RTDroid

Published: 02 June 2014 Publication History

Abstract

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.

References

[1]
Android and RTOS together: The dynamic duo for today's medical devices. http://embedded-computing.com/articles/android-rtos-duo-todays-medical-devices/.
[2]
Linux kernel memory management: Out of memory killer. http://linux-mm.org/OOM_Killer.
[3]
Real-Time Linux Wiki. https://rt.wiki.kernel.org/index.php/Main_Page.
[4]
Roving reporter: Medical Device Manufacturers Improve Their Bedside Manner with Android. http://goo.gl/d2JF3.
[5]
RTEMS. http://www.rtems.org/.
[6]
What OS Is Best for a Medical Device? http://www.summitdata.com/blog/?p=68.
[7]
Why Android will be the biggest selling medical devices in the world by the end of 2012. http://goo.gl/G5UXq.
[8]
Ethan Blanton and Lukasz Ziarek. Non-blocking inter-partition communication with wait-free pair transactions. In Proceedings of the 11th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES '13, pages 58--67, New York, NY, USA, 2013. ACM.
[9]
Jian-Jia Chen and Chin-Fu Kuo. Energy-efficient scheduling for real-time systems on dynamic voltage scaling (dvs) platforms. In Embedded and Real-Time Computing Systems and Applications, 2007. RTCSA 2007. 13th IEEE International Conference on, pages 28--38, 2007.
[10]
Angelo Corsaro and DouglasC. Schmidt. The design and performance of the jrate real-time java implementation. 2519:900--921, 2002.
[11]
Cpu frequency and voltage scaling code in the linux(tm) kernel. https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt.
[12]
Android Developers. Bionic c library overview. http://www.kandroid.org/ndk/docs/system/libc/OVERVIEW.html.
[13]
Thomas Gerlitz, Igor Kalkov, John Schommer, Dominik Franke, and Stefan Kowalewski. Non-blocking garbage collection for real-time android. In Proceedings of the 11th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES '13, 2013.
[14]
James Gosling and Greg Bollella. The Real-Time Specification for Java. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2000.
[15]
Dip Goswami, Martin Lukasiewycz, Reinhard Schneider, and Samarjit Chakraborty. Time-triggered implementations of mixed-criticality automotive software. In Proceedings of the Conference on Design, Automation and Test in Europe, DATE '12, pages 1227--1232, San Jose, CA, USA, 2012. EDA Consortium.
[16]
D. Hart, J. Stultz, and T. Ts'o. Real-time linux in real time. IBM Syst. J., 47(2):207--220, April 2008.
[17]
Mike G. Hill and Thomas W. Lake. Non-interference analysis for mixed criticality code in avionics systems. In Proceedings of the 15th IEEE International Conference on Automated Software Engineering, ASE '00, pages 257--, Washington, DC, USA, 2000. IEEE Computer Society.
[18]
iOmniscient. Fall and man down detection. http://iomniscient.com/index.php?option=com_content&view=article&id=155&Itemid=53.
[19]
Igor Kalkov, Dominik Franke, John F. Schommer, and Stefan Kowalewski. A real-time extension to the Android platform. In Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES '12, pages 105--114, New York, NY, USA, 2012. ACM.
[20]
MinSeong Kim and Andy Wellings. An efficient and predictable implementation of asynchronous event handling in the RTSJ. In Proceedings of the 6th international workshop on Java technologies for real-time and embedded systems, JTRES '08, pages 48--57, New York, NY, USA, 2008. ACM.
[21]
Clíudio Maia, Lués Nogueira, and Luis Miguel Pinho. Evaluating android os for embedded real-time systems. In Proceedings of the 6th International Workshop on Operating Systems Platforms for Embedded Real-Time Applications, Brussels, Belgium, pages 63--70, 2010.
[22]
Clíudio Maia, Luís Nogueira, and Luis Miguel Pinho. Evaluating Android OS for embedded real-time systems. In Proceedings of the 6th International Workshop on Operating Systems Platforms for Embedded Real-Time Applications, Brussels, Belgium, OSPERT '10, pages 63--70, 2010.
[23]
Sibin Mohan, Frank Mueller, Michael Root, William Hawkins, Christopher Healy, David Whalley, and Emilio Vivancos. Parametric timing analysis and its application to dynamic voltage scaling. ACM Trans. Embed. Comput. Syst., 10(2):25:1--25:34, January 2011.
[24]
Yolanda Murphy. Northrop grumman news release: DARPA ASPN project article. http://www.irconnect.com/noc/press/pages/news_releases.html?d=10029353.
[25]
Northrop to demo darpa navigation system on android. http://goo.gl/bgRggD.
[26]
Hyeong-Seok Oh, Beom-Jun Kim, Hyung-Kyu Choi, and Soo-Mook Moon. Evaluation of Android Dalvik virtual machine. In Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES '12, pages 115--124, New York, NY, USA, 2012. ACM.
[27]
Vivek S. Pai, Peter Druschel, and Willy Zwaenepoel. Flash: An efficient and portable web server. In Proceedings of the 1999 USENIX Annual Technical Conference, USENIX ATC'99, 1999.
[28]
Filip Pizlo, Lukasz Ziarek, Ethan Blanton, Petr Maj, and Jan Vitek. High-level programming of embedded hard real-time devices. In Proceedings of the 5th European conference on Computer systems, EuroSys '10, pages 69--82, New York, NY, USA, 2010. ACM.
[29]
Filip Pizlo, Lukasz Ziarek, Petr Maj, Antony L. Hosking, Ethan Blanton, and Jan Vitek. Schism: fragmentation-tolerant real-time garbage collection. In Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation, PLDI '10, pages 146--159, New York, NY, USA, 2010. ACM.
[30]
Military Embedded Systems. Rugged handheld computers suit up with android on the battlefield. http://mil-embedded.com/articles/rugged-suit-with-android-the-battlefield/#.
[31]
Strand-1 satellite launches Google Nexus One smartphone into orbit. http://www.wired.co.uk/news/archive/2013-02/25/strand-1-phone-satellite.
[32]
Matt Welsh, David Culler, and Eric Brewer. Seda: An architecture for well-conditioned, scalable internet services. In Proceedings of the Eighteenth ACM Symposium on Operating Systems Principles, SOSP '01, pages 230--243, New York, NY, USA, 2001. ACM.
[33]
Yin Yan, Sree Harsha Konduri, Amit Kulkarni, Varun Anand, Steven Y. Ko, and Lukasz Ziarek. Rtdroid: A design for real-time android. In Proceedings of the 11th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES '13, 2013.
[34]
Lukasz Ziarek. Prp: Priority rollback protocol -- a pip extension for mixed criticality systems: Short paper. In Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems, JTRES '10, pages 82--84, New York, NY, USA, 2010. ACM.

Cited By

View all
  • (2024)Modal analysis under jittering and kernel clock distribution: single-output identificationProceedings of the Institution of Civil Engineers - Smart Infrastructure and Construction10.1680/jsmic.21.00019177:4(224-235)Online publication date: 1-Dec-2024
  • (2019)Aplicaciones Ada en Android con requisitos de tiempo realRevista Iberoamericana de Automática e Informática industrial10.4995/riai.2019.1060416:3(264)Online publication date: 12-Jun-2019
  • (2019)Can Android Run on Time? Extending and Measuring the Android Platform's TimelinessACM Transactions on Embedded Computing Systems10.1145/328925717:6(1-26)Online publication date: 9-Jan-2019
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
MobiSys '14: Proceedings of the 12th annual international conference on Mobile systems, applications, and services
June 2014
410 pages
ISBN:9781450327930
DOI:10.1145/2594368
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 02 June 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. android
  2. mobile systems
  3. real-time systems
  4. smartphones

Qualifiers

  • Research-article

Funding Sources

Conference

MobiSys'14
Sponsor:

Acceptance Rates

MobiSys '14 Paper Acceptance Rate 25 of 185 submissions, 14%;
Overall Acceptance Rate 274 of 1,679 submissions, 16%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)17
  • Downloads (Last 6 weeks)1
Reflects downloads up to 25 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Modal analysis under jittering and kernel clock distribution: single-output identificationProceedings of the Institution of Civil Engineers - Smart Infrastructure and Construction10.1680/jsmic.21.00019177:4(224-235)Online publication date: 1-Dec-2024
  • (2019)Aplicaciones Ada en Android con requisitos de tiempo realRevista Iberoamericana de Automática e Informática industrial10.4995/riai.2019.1060416:3(264)Online publication date: 12-Jun-2019
  • (2019)Can Android Run on Time? Extending and Measuring the Android Platform's TimelinessACM Transactions on Embedded Computing Systems10.1145/328925717:6(1-26)Online publication date: 9-Jan-2019
  • (2019)Energy-efficient low-latency audio on androidJournal of Systems and Software10.1016/j.jss.2019.03.013152:C(182-195)Online publication date: 1-Jun-2019
  • (2018)Application validation on RTDroidACM SIGBED Review10.1145/3269482.326948415:4(7-14)Online publication date: 20-Aug-2018
  • (2018)Characterizing the Reconfiguration Latency of Image Sensor Resolution on Android DevicesProceedings of the 19th International Workshop on Mobile Computing Systems & Applications10.1145/3177102.3177109(81-86)Online publication date: 12-Feb-2018
  • (2018)A Framework to Measure Reliance of Acoustic Latency on Smartphone Status2018 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops)10.1109/PERCOMW.2018.8480354(348-354)Online publication date: Mar-2018
  • (2017)PosterProceedings of the 15th Annual International Conference on Mobile Systems, Applications, and Services10.1145/3081333.3089312(168-168)Online publication date: 16-Jun-2017
  • (2017)ORBITIEEE Transactions on Mobile Computing10.1109/TMC.2016.257382516:3(801-815)Online publication date: 1-Mar-2017
  • (2017)Making Android Run on Time2017 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS)10.1109/RTAS.2017.38(25-36)Online publication date: Apr-2017
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

EPUB

View this article in ePub.

ePub

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media