z-logo
open-access-imgOpen Access
Static Dalvik Bytecode Optimization for Android Applications
Author(s) -
Kim Jeehong,
Kim Inhyeok,
Min Changwoo,
Jun Hyung Kook,
Lee Soo Hyung,
Kim WonTae,
Eom Young Ik
Publication year - 2015
Publication title -
etri journal
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.295
H-Index - 46
eISSN - 2233-7326
pISSN - 1225-6463
DOI - 10.4218/etrij.15.0114.0036
Subject(s) - bytecode , computer science , virtual machine , machine code , android (operating system) , compiler , operating system
Since just‐in‐time (JIT) has considerable overhead to detect hot spots and compile them at runtime, using sophisticated optimization techniques for embedded devices means that any resulting performance improvements will be limited. In this paper, we introduce a novel static Dalvik bytecode optimization framework, as a complementary compilation of the Dalvik virtual machine, to improve the performance of Android applications. Our system generates optimized Dalvik bytecodes by using Low Level Virtual Machine (LLVM). A major obstacle in using LLVM for optimizing Dalvik bytecodes is determining how to handle the high‐level language features of the Dalvik bytecode in LLVM IR and how to optimize LLVM IR conforming to the language information of the Dalvik bytecode. To this end, we annotate the high‐level language features of Dalvik bytecode to LLVM IR and successfully optimize Dalvik bytecodes through instruction selection processes. Our experimental results show that our system with JIT improves the performance of Android applications by up to 6.08 times, and surpasses JIT by up to 4.34 times.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here