EJVM

an economic Java run-time environment for embedded devices

Da-Wei Chang, Ruei Chuan Chang

Research output: Contribution to journalArticle

4 Citations (Scopus)

Abstract

As network-enabled embedded devices and Java grow in their popularity, embedded system researchers start seeking ways to make devices Java-enabled. However, it is a challenge to apply Java technology to these devices due to their shortage of resources. In this paper, we propose EJVM (Economic Java Virtual Machine), an economic way to run Java programs on network-enabled and resource-limited embedded devices. Espousing the architecture proposed by distributed JVM, we store all Java codes on the server to reduce the storage needs of the client devices. In addition, we use two novel techniques to reduce the client-side memory footprints: server-side class representation conversion and on-demand bytecode loading. Finally, we maintain client-side caches and provide performance evaluation on different caching policies. We implement EJVM by modifying a freely available JVM implementation, Kaffe. From the experiment results, we show that EJVM can reduce Java heap requirements by about 20-50% and achieve 90% of the original performance.

Original languageEnglish
Pages (from-to)129-146
Number of pages18
JournalSoftware - Practice and Experience
Volume31
Issue number2
DOIs
Publication statusPublished - 2001 Feb 1

Fingerprint

Economics
Servers
Embedded systems
Data storage equipment
Virtual machine
Experiments

All Science Journal Classification (ASJC) codes

  • Software

Cite this

@article{4c71f68df0fb49998fc3ba8ac03ea034,
title = "EJVM: an economic Java run-time environment for embedded devices",
abstract = "As network-enabled embedded devices and Java grow in their popularity, embedded system researchers start seeking ways to make devices Java-enabled. However, it is a challenge to apply Java technology to these devices due to their shortage of resources. In this paper, we propose EJVM (Economic Java Virtual Machine), an economic way to run Java programs on network-enabled and resource-limited embedded devices. Espousing the architecture proposed by distributed JVM, we store all Java codes on the server to reduce the storage needs of the client devices. In addition, we use two novel techniques to reduce the client-side memory footprints: server-side class representation conversion and on-demand bytecode loading. Finally, we maintain client-side caches and provide performance evaluation on different caching policies. We implement EJVM by modifying a freely available JVM implementation, Kaffe. From the experiment results, we show that EJVM can reduce Java heap requirements by about 20-50{\%} and achieve 90{\%} of the original performance.",
author = "Da-Wei Chang and Chang, {Ruei Chuan}",
year = "2001",
month = "2",
day = "1",
doi = "10.1002/1097-024X(200102)31:2<129::AID-SPE359>3.0.CO;2-1",
language = "English",
volume = "31",
pages = "129--146",
journal = "Software - Practice and Experience",
issn = "0038-0644",
publisher = "John Wiley and Sons Ltd",
number = "2",

}

EJVM : an economic Java run-time environment for embedded devices. / Chang, Da-Wei; Chang, Ruei Chuan.

In: Software - Practice and Experience, Vol. 31, No. 2, 01.02.2001, p. 129-146.

Research output: Contribution to journalArticle

TY - JOUR

T1 - EJVM

T2 - an economic Java run-time environment for embedded devices

AU - Chang, Da-Wei

AU - Chang, Ruei Chuan

PY - 2001/2/1

Y1 - 2001/2/1

N2 - As network-enabled embedded devices and Java grow in their popularity, embedded system researchers start seeking ways to make devices Java-enabled. However, it is a challenge to apply Java technology to these devices due to their shortage of resources. In this paper, we propose EJVM (Economic Java Virtual Machine), an economic way to run Java programs on network-enabled and resource-limited embedded devices. Espousing the architecture proposed by distributed JVM, we store all Java codes on the server to reduce the storage needs of the client devices. In addition, we use two novel techniques to reduce the client-side memory footprints: server-side class representation conversion and on-demand bytecode loading. Finally, we maintain client-side caches and provide performance evaluation on different caching policies. We implement EJVM by modifying a freely available JVM implementation, Kaffe. From the experiment results, we show that EJVM can reduce Java heap requirements by about 20-50% and achieve 90% of the original performance.

AB - As network-enabled embedded devices and Java grow in their popularity, embedded system researchers start seeking ways to make devices Java-enabled. However, it is a challenge to apply Java technology to these devices due to their shortage of resources. In this paper, we propose EJVM (Economic Java Virtual Machine), an economic way to run Java programs on network-enabled and resource-limited embedded devices. Espousing the architecture proposed by distributed JVM, we store all Java codes on the server to reduce the storage needs of the client devices. In addition, we use two novel techniques to reduce the client-side memory footprints: server-side class representation conversion and on-demand bytecode loading. Finally, we maintain client-side caches and provide performance evaluation on different caching policies. We implement EJVM by modifying a freely available JVM implementation, Kaffe. From the experiment results, we show that EJVM can reduce Java heap requirements by about 20-50% and achieve 90% of the original performance.

UR - http://www.scopus.com/inward/record.url?scp=0035250157&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0035250157&partnerID=8YFLogxK

U2 - 10.1002/1097-024X(200102)31:2<129::AID-SPE359>3.0.CO;2-1

DO - 10.1002/1097-024X(200102)31:2<129::AID-SPE359>3.0.CO;2-1

M3 - Article

VL - 31

SP - 129

EP - 146

JO - Software - Practice and Experience

JF - Software - Practice and Experience

SN - 0038-0644

IS - 2

ER -