ACM Home Page
Please provide us with feedback. Feedback
Java bytecode compression for low-end embedded systems
Full text PdfPdf (241 KB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 22 ,  Issue 3  (May 2000) table of contents
Pages: 471 - 489  
Year of Publication: 2000
ISSN:0164-0925
Authors
Lars Ræder Clausen  IRISA/INRIA, Rennes, France
Ulrik Pagh Schultz  IRISA/INRIA, Rennes, France
Charles Consel  IRISA/INRIA, Rennes, France
Gilles Muller  IRISA/INRIA, Rennes, France
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 11,   Downloads (12 Months): 64,   Citation Count: 25
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/353926.353933
What is a DOI?

ABSTRACT

A program executing on a low-end embedded system, such as a smart-card, faces scarce memory resources and fixed execution time constraints. We demonstrate that factorization of common instruction sequences in Java bytecode allows the memory footprint to be reduced, on average, to 85% of its original size, with a minimal execution time penalty. While preserving Java compatibility, our solution requires only a few modifications which are straightforward to implement in any JVM used in a low-end embedded system.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
 
4
Clausen, L. R. 1997. A Java bytecode optimizer using side-e ect analysis. Concurrency: Practice & Experience 9, 11 (Nov.), 1031-1045.
 
5
Clausen, L. R., Schultz, U., Consel, C., and Muller, G. 1998. Java bytecode compression for embedded systems. Research Report 3578, INRIA, Rennes, France. Dec.
 
6
Dallas Semiconductor Corp. 1998. Java-Powered Decoder Ring. Dallas Semiconductor Corp. URL: http://www.ibutton.com/jring_facts.html.
 
7
Dallas Semiconductor Corp. 1999. Java-Powered Ring Download Site. URL: http://www.ibutton.com/jiblet.
8
9
 
10
11
12
 
13
 
14
 
15
Huffman, D. A. 1952. A method for the construction of minimum-redundancy codes. Proceedings of the Institute for Radio Engineering 40, 9 (Sept.), 1098-1101.
 
16
 
17
 
18
 
19
 
20
Pendragon Software. 1997. Ca eineMark 3.0. URL: http://www.webfayre.com/pendragon/cm3/index.html.
21
22
 
23
 
24
Sun Microsystems, Inc. 1997. JavaCard 2.0 Language Subset and Virtual Machine Speci cation, 1.0 ed. Sun Microsystems, Inc. URL: http://www.javasoft.com/products/javacard.
 
25
Sun Microsystems, Inc. 1998a. Embedded Java Speci cation, 1.0 ed. Sun Microsystems, Inc. URL: http://java.sun.com/products/embeddedjava/note.html.
 
26
Sun Microsystems, Inc. 1998b. Java Card API 2.0 Reference Implementation, Developer Release 2 ed. Sun Microsystems, Inc. URL: http://www.javasoft.com/products/javacard.
 
27
Sun Microsystems, Inc. 1998c. The Java Developers Kit 1.0.2. Sun Microsystems, Inc. URL: http://java.sun.com/products/jdk/1.0.2/.
 
28
Sun Microsystems, Inc. 1999a. Java Embedded Server. Sun Microsystems, Inc. URL: http://www.sun.com/software/embeddedserver.
 
29
Sun Microsystems, Inc. 1999b. JavaCard 2.1 Application Programming Interface Speci cation. Sun Microsystems, Inc. URL: http://www.javasoft.com/products/javacard.
 
30
Sun Microsystems, Inc. 1999c. JavaCard 2.1 Runtime Environment (JCRE) Speci cation. Sun Microsystems, Inc. URL: http://www.javasoft.com/products/javacard.
 
31
Sun Microsystems, Inc. 1999d. JavaCard 2.1 Virtual Machine Speci cation. Sun Microsystems, Inc. URL: http://www.javasoft.com/products/javacard.
 
32
Sun Microsystems, Inc. 2000. JavaCard 2.1 development kit. URL: http://www.javasoft.com/products/javacard.
33
 
34
Visa International Service Association 1998. Visa Open Platform Card Version 1.0 Implementation for Applet Developers. Visa International Service Association. URL: http://www.visa.com/cgi-bin/vee/nt/suppliers/open/main.html.
 
35
Ziv, J. and Lempel, A. 1978. Compression of individual sequences via variable rate encoding. IEEE Transactions on Information Theory 24, 530-536.

CITED BY  25


REVIEW

"R. Clayton : Reviewer"

Java is ideal for implementing embedded systems as long as you modify both its bytecode programs—to use less space—and its virtual machine. This paper takes up these issues, presenting a bytecode compression scheme and describing J  more...

Collaborative Colleagues:
Lars Ræder Clausen: colleagues
Ulrik Pagh Schultz: colleagues
Charles Consel: colleagues
Gilles Muller: colleagues