Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article
Public Access

Can Android Run on Time? Extending and Measuring the Android Platform's Timeliness

Published: 09 January 2019 Publication History

Abstract

Time predictability is difficult to achieve in the complex, layered execution environments that are common in modern embedded devices such as smartphones. We explore adopting the Android programming model for a range of embedded applications that extends beyond mobile devices, under the constraint that changes to widely used libraries should be minimized. The challenges we explore include the interplay between real-time activities and the rest of the system, how to express the timeliness requirements of components, and how well those requirements can be met on stock embedded platforms. We detail the design and implementation of our modifications to the Android framework along with a real-time VM and OS, and we provide experimental data validating feasibility over five applications.

References

[1]
{n. d.}. OpenSL SE for Android. https://developer.android.com/ndk/guides/audio/opensl-for-android.htm
[2]
Hamza Ali, Arthur P. Lobo, and Philipos C. Loizou. 2013. Design and evaluation of a personal digital assistant-based research platform for cochlear implants. IEEE Transactions on Biomedical Engineering 60, 11 (2013).
[3]
Adam Czerniejewski, Shaun Cosgrove, Yin Yan, Karthik Dantu, Steven Y. Ko, and Lukasz Ziarek. 2016. jUAV: A Java based system for unmanned aerial vehicles. In Proceedings of the International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES).
[4]
Lesley Fosh, Steve Benford, Stuart Reeves, Boriana Koleva, and Patrick Brundell. 2013. See me, feel me, touch me, hear me: Trajectories and interpretation in a sculpture garden. In Proceedings of the Conference on Human Factors in Computing Systems (CHI).
[5]
Thomas Gerlitz, Igor Kalkov, John Schommer, Dominik Franke, and Stefan Kowalewski. 2013. Non-blocking garbage collection for real-time Android. In Proceedings of the International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES).
[6]
Girish Gokul, Yin Yan, Karthik Dantu, Steven Y. Ko, and Lukasz Ziarek. 2016. Real time sound processing on Android. In Proceedings of the International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES).
[7]
James Gosling and Greg Bollella. 2000. The Real-Time Specification for Java. Addison-Wesley.
[8]
Florian Heller and Jan Borchers. 2014. AudioTorch: Using a smartphone as directional microphone in virtual audio spaces. In Proceedings of the Conference on Human-computer Interaction with Mobile Devices 8 Services (MobileHCI).
[9]
Tomas Kalibera, Pavel Parizek, Michal Malohlava, and Martin Schoeberl. 2010. Exhaustive testing of safety critical Java. In Proceedings of the Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES).
[10]
Igor Kalkov, Dominik Franke, John F. Schommer, and Stefan Kowalewski. 2012. A real-time extension to the Android platform. In Proceedings of the International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES).
[11]
Igor Kalkov, Alexandru Gurghian, and Stefan Kowalewski. 2014. Predictable broadcasting of parallel intents in real-time Android. In Proceedings of the International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES).
[12]
Hyeongseok Kang, Dohyeon Kim, Jeongnam Kang, and Kanghee Kim. 2016. Real-time motion control on Android platform. The Journal of Supercomputing 72, 1 (2016).
[13]
Hyosu Kim, SangJeong Lee, Jung-Woo Choi, Hwidong Bae, Jiyeon Lee, Junehwa Song, and Insik Shin. 2014. Mobile maestro: Enabling immersive multi-speaker audio applications on commodity mobile devices. In Proceedings of the International Joint Conference on Pervasive and Ubiquitous Computing (Ubicomp).
[14]
H. Kim, S. Lee, W. Han, D. Kim, and I. Shin. 2015. SounDroid: Supporting real-time sound applications on commodity mobile devices. In Proceedings of the Real-Time Systems Symposium (RTAS).
[15]
Kaikai Liu, Xinxin Liu, and Xiaolin Li. 2013. Guoguo: Enabling fine-grained indoor localization via smartphone. In Proceedings of the International Conference on Mobile Systems, Applications, and Services (MobiSys).
[16]
Cláudio Maia, Luís Nogueira, and Luis Miguel Pinho. 2010. Evaluating Android OS for embedded real-time systems. In Proceedings of the International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT).
[17]
Wolfgang Mauerer, Gernot Hillier, Jan Sawallisch, Stefan Hönick, and Simon Oberthür. 2012. Real-time Android: Deterministic ease of use. In Proceedings of the Embedded Linux Conference Europe (ELCE).
[18]
Noah J. Myrent, Douglas E. Adams, Gustavo Rodriguez-Rivera, Denis A. Ulybyshev, Jan Vitek, Ethan Blanton, and Tomas Kalibera. 2015. A robust algorithm to detecting wind turbine blade health using vibro-acoustic modulation and sideband spectral analysis. In Proceedings of the Wind Energy Symposium.
[19]
Hyeong-Seok Oh, Beom-Jun Kim, Hyung-Kyu Choi, and Soo-Mook Moon. 2012. Evaluation of Android Dalvik virtual machine. In Proceedings of the International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES).
[20]
E. Peguero, M. Labrador, and B. Cook. 2016. Assessing jitter in sensor time series from Android mobile devices. In Proceedings of the International Conference on Smart Computing (SMARTCOMP).
[21]
Chunyi Peng, Guobin Shen, Yongguang Zhang, Yanlin Li, and Kun Tan. 2007. BeepBeep: A high accuracy acoustic ranging system using COTS mobile devices. In Proceedings of the International Conference on Embedded Networked Sensor Systems (SenSys).
[22]
Luc Perneel, Hasan Fayyad-Kazan, and Martin Timmerman. 2012. Can Android be used for real-time purposes?. In Proceedings of the Computer Systems and Industrial Informatics (ICCSII).
[23]
Filip Pizlo, Lukasz Ziarek, Ethan Blanton, Petr Maj, and Jan Vitek. 2010. High-level programming of embedded hard real-time devices. In Proceedings of the European Conference on Computer Systems (EuroSys).
[24]
Jian Qiu, David Chu, Xiangying Meng, and Thomas Moscibroda. 2011. On the feasibility of real-time phone-to-phone 3D localization. In Proceedings of the Conference on Embedded Networked Sensor Systems (SenSys).
[25]
Tauhidur Rahman, Alexander T. Adams, Mi Zhang, Erin Cherry, Bobby Zhou, Huaishu Peng, and Tanzeem Choudhury. 2014. BodyBeat: A mobile system for sensing non-speech body sounds. In Proceedings of the International Conference on Mobile Systems, Applications, and Services (MOBISYS).
[26]
Ganesh Jairam Rajguru. 2014. Reliable real-time applications on Android OS. International Journal of Management, IT and Engineering 4, 6 (2014).
[27]
Alejandro Pérez Ruiz, Mario Aldea Rivas, and Michael González Harbour. 2015. CPU isolation on the Android OS for running real-time applications. In Proceedings of the International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES).
[28]
Daniel Tang, Ales Plsek, and Jan Vitek. 2010. Static checking of safety critical Java annotations. In Proceedings of the International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES).
[29]
Stephen P. Tarzia, Peter A. Dinda, Robert P. Dick, and Gokhan Memik. 2011. Indoor localization without infrastructure using the acoustic background spectrum. In Proceedings of the International Conference on Mobile Systems, Applications, and Services (MOBISYS).
[30]
Mads Tofte and Jean-Pierre Talpin. 1994. Implementation of the typed call-by-value -calculus using a stack of regions. In Proceedings of the Symposium on Principles of Programming Languages (POPL).
[31]
Yin Yan, Shaun Cosgrove, Varun Anand, Amit Kulkarni, Sree Harsha Konduri, Steven Y. Ko, and Lukasz Ziarek. 2016. RTDroid: A design for real-time Android. IEEE Transactions on Mobile Computing 15, 10 (2016).
[32]
Yin Yan, Karthik Dantu, Steve Ko, Jan Vitek, and Lukasz Ziarek. 2017. Making Android run on time. In Proceedings of the Real-Time and Embedded Technology and Application Symposium (RTAS).
[33]
Yin Yan, Sree Harsha Konduri, Amit Kulkarni, Varun Anand, Steve Ko, and Lukasz Ziarek. 2014. Real-time Android with RTDroid. In Proceedings of the International Conference on Mobile Systems, Applications, and Services (MOBISYS).
[34]
Yin Yan and Lukasz Ziarek. 2018. Application validation on RTDroid. SIGBED Review 15, 4 (2018).
[35]
Zengbin Zhang, David Chu, Xiaomeng Chen, and Thomas Moscibroda. 2012. SwordFight: Enabling a new class of phone-to-phone action games on commodity phones. In Proceedings of the International Conference on Mobile Systems, Applications, and Services (MOBISYS).

Cited By

View all
  • (2021)Performance Assessment of Linux Kernels with PREEMPT_RT on ARM-Based Embedded DevicesElectronics10.3390/electronics1011133110:11(1331)Online publication date: 1-Jun-2021
  • (2020)Safe and Policy Oriented Secure Android-Based Industrial Embedded Control SystemApplied Sciences10.3390/app1008279610:8(2796)Online publication date: 17-Apr-2020
  • (2020)Non-Blocking Synchronization Between Real-Time and Non-Real-Time ApplicationsIEEE Access10.1109/ACCESS.2020.30153858(147618-147634)Online publication date: 2020

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 17, Issue 6
November 2018
186 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/3299750
Issue’s Table of Contents
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]

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 09 January 2019
Accepted: 01 October 2018
Revised: 01 September 2018
Received: 01 December 2017
Published in TECS Volume 17, Issue 6

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Android
  2. Real-time
  3. mobile devices

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)82
  • Downloads (Last 6 weeks)11
Reflects downloads up to 12 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Performance Assessment of Linux Kernels with PREEMPT_RT on ARM-Based Embedded DevicesElectronics10.3390/electronics1011133110:11(1331)Online publication date: 1-Jun-2021
  • (2020)Safe and Policy Oriented Secure Android-Based Industrial Embedded Control SystemApplied Sciences10.3390/app1008279610:8(2796)Online publication date: 17-Apr-2020
  • (2020)Non-Blocking Synchronization Between Real-Time and Non-Real-Time ApplicationsIEEE Access10.1109/ACCESS.2020.30153858(147618-147634)Online publication date: 2020

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media