The previous development environments for smart phone contents are needed to generate specific target code depending on target devices or platforms, and each platform has its own developing language. Therefore, even if the same contents are to be used, it must be redeveloped depending on the target machine and a compiler for that specific machine is needed, making the contents development process very inefficient. The Smart Cross Platform was developed for executing contents written in various programming languages – C, C++, Java, and Objective-C – on iOS or Android based smart devices. The contents developed in each programming language are translated into intermediate language called SIL (Smart Intermediate Language) by the compiler. And, the translation results - intermediate programs are executed on the SVM (Smart Virtual Machine) – a core module of the Smart Cross Platform – without device dependency. Intermediate language based SVM has an advantage of execution on multiple target devices without considerations about device specific features, but it has also a problem which low performance by the software-based execution, consequently. Therefore, to improve the performance of SVM is very important issue. In this paper, we deal with two kinds of optimization technique to optimize stack based SVM which can execute on various smart devices. And, to improve performance of the SVM on execution engine aspect, we apply the one of these optimization techniques. For verification of this optimization technique, we profile and analyze performance of the original/optimized SVM. As a result of the experiments, the optimized SVM has 23~27% reduced execution times than the original SVM.
[1]
Yunsik Son,et al.
Design and Implementation of the Smart Virtual Machine for Smart Cross Platform
,
2013
.
[2]
Jung-Sook Kim,et al.
Virtual Machine Code for Embedded Systems
,
2004,
ESA/VLSI.
[3]
Son Yunsik,et al.
An Objective-C Compiler to Generate Platform-Independent Codes in Smart Device Environments
,
2013
.
[4]
G Praveen.
Analysis of Performance in the Virtual Machines Environment
,
2011
.
[5]
Frank Yellin,et al.
The Java Virtual Machine Specification
,
1996
.
[6]
Joshua Engel.
Programming for the Java¿ Virtual Machine
,
1999
.
[7]
Iain D. Craig,et al.
Virtual machines
,
2005
.
[8]
YangSun Lee,et al.
Design and Implementation of the Decompiler for Virtual Machine Code of the C++ Compiler in the Ubiquitous Game Platform
,
2006,
ICHIT.
[9]
Serge Lidin,et al.
Inside Microsoft .Net Il Assembler
,
2002
.
[10]
YangSun Lee,et al.
A Study on Optimization Techniques for the Smart Virtual Machine Platform
,
2012,
FGIT.