Smartphones get increasingly popular where more and more smartphone platforms emerge. Special attention was gained by the open source platform Android which was presented by the Open Handset Alliance (OHA) hosting members like Google, Motorola, and HTC. Android uses a Linux kernel and a stripped-down userland with a custom Java VM set on top. The resulting system joins the advantages of both environments, while third-parties are intended to develop only Java applications at the moment.
In this work, we present the benefit of using native applications in Android. Android includes a fully functional Linux, and using it for heavy computational tasks when developing applications can bring in substantional performance increase. We present how to develop native applications and software components, as well as how to let Linux applications and components communicate with Java programs. Additionally, we present performance measurements of native and Java applications executing identical tasks.
The results show that native C applications can be up to 30 times as fast as an identical algorithm running in Dalvik VM. Java applications can become a speed-up of up to 10 times if utilizing JNI.
The original version of this chapter was revised: The copyright line was incorrect. This has been corrected. The Erratum to this chapter is available at DOI: 10.1007/978-3-642-01802-2_30
This is a preview of subscription content, log in via an institution to check access.
PreviewUnable to display preview. Download preview PDF.
Similar content being viewed by others ReferencesAndroid - An Open Handset Alliance Project (2008/12/05), http://code.google.com/android/
Android Open Source Project (2008/12/05), http://source.android.com/
Android Market (2008/12/05), http://www.android.com/market/
Android Developer Mailing List Post (2008/12/05), http://groups.google.com/group/android-developers/browse_thread/thread/f87e6fce2b26db36
Reinholtz, K.: Java will be faster than C++. ACM SIGPLAN Not. 35, 25–28 (2000)
Eclipse Intergrated Development Environment (2008/12/05), http://www.eclipse.org/
Netbeans Intergrated Development Environment (2008/12/05), http://www.netbeans.org/
Codesourcery (2008/12/05), http://www.codesourcery.com/
Scratchbox (2008/12/05), http://www.scratchbox.org/
Ubuntu Home Page (2008/12/05), http://www.ubuntu.com/
Busybox (2008/12/05), http://www.busybox.net/
Unnamed Pipes (2008/12/05), http://docs.sun.com/app/docs/doc/816-1042/6m7g4ma79
Named Pipes (FIFOs) (2008/12/05), http://docs.sun.com/app/docs/doc/816-1042/6m7g4ma7a
HTC T-Mobile G1 (2008/12/05), http://www.htc.com/www/product/g1/overview.html
Schmidt, A.-D., Schmidt, H.-G., Clausen, J., Yüksel, K.A., Kiraz, O., Camtepe, A., Albayrak, S.: Enhancing Security of Linux-based Android Devices. In: Proceedings of 15th International Linux Kongress. Lehman Verlag, Hamburg (2008)
McConnel, S.: Code Complete, 2nd edn., pp. 180–197. Microsoft Press, Redmond (2004)
Knuth, D.E.: The Art of Computer Programming, 2nd edn. Sorting and Searching, vol. 3, pp. 180–197. Addison-Wesley, Reading (1997)
Hoare, C.A.R.: Quicksort. Computer Journal 5(1), 10–15 (1962)
Williams, J.W.J.: Algorithm 232 - Heapsort. Communications of the ACM 7(6), 347–348 (1964)
Okumura, T., Childers, B., Mossé, B.: Running a Java VM Inside an Operating System Kernel. In: VEE 2008: Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments, Seattle, WA, USA (2008)
Dongarra, J.J.: The LINPACK Benchmark: An explanation. In: Houstis, E.N., Polychronopoulos, C.D., Papatheodorou, T.S. (eds.) ICS 1987. LNCS, vol. 297. Springer, Heidelberg (1988)
Technische Universität Berlin, 10587, Berlin, Germany
Leonid Batyuk, Aubrey-Derrick Schmidt, Hans-Gunther Schmidt, Ahmet Camtepe & Sahin Albayrak
École Nationale Supérieure des Télécommunications de Bretagne Cesson-Sévigné, 2, rue de la Châtaigneraie, P.O. Box BP 78, 35512, France
Jean-Marie Bonnin
Facoltà di Ingegneria - DEIS - LIA (Lab1), Università degli Studi di Bologna, Viale Risorgimento, 2, 40136, Bologna, Italy
Carlo Giannelli
Institute for Telecommunications Systems, Chair for Next Generations Networks, Technische Universität Berlin, Franklinstr. 28/29, 10587, Berlin, Germany
Thomas Magedanz
© 2009 ICST Institute for Computer Science, Social Informatics and Telecommunications Engineering
About this paper Cite this paperBatyuk, L., Schmidt, AD., Schmidt, HG., Camtepe, A., Albayrak, S. (2009). Developing and Benchmarking Native Linux Applications on Android. In: Bonnin, JM., Giannelli, C., Magedanz, T. (eds) MobileWireless Middleware, Operating Systems, and Applications. MOBILWARE 2009. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 7. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-01802-2_28
Download citationDOI: https://doi.org/10.1007/978-3-642-01802-2_28
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-01801-5
Online ISBN: 978-3-642-01802-2
eBook Packages: Computer ScienceComputer Science (R0)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4