Elements of information theory
Elements of information theory
Fast static analysis of C++ virtual function calls
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
Tailored compression of Java class files
Software—Practice & Experience
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
A Tree-Based Alternative to Java Byte-Codes
International Journal of Parallel Programming
Practical experience with an application extractor for Java
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Compression of Java class files
Compression of Java class files
Java Virtual Machine Specification
Java Virtual Machine Specification
The Java Language Specification
The Java Language Specification
Embedded Internet Systems: Poised for Takeoff
IEEE Internet Computing
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
JAZZ: an efficient compressed format for Java archive files
CASCON '98 Proceedings of the 1998 conference of the Centre for Advanced Studies on Collaborative research
Sharpening global static analysis to cope with Java
CASCON '98 Proceedings of the 1998 conference of the Centre for Advanced Studies on Collaborative research
Extracting Java Library Subsets for Deployment on Embedded Systems
CSMR '99 Proceedings of the Third European Conference on Software Maintenance and Reengineering
Java bytecode compression for low-end embedded systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Practical extraction techniques for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
A java virtual machine architecture for very small devices
Proceedings of the 2003 ACM SIGPLAN conference on Language, compiler, and tool for embedded systems
Extracting Java library subsets for deployment on embedded systems
Science of Computer Programming - Software maintenance and reengineering (CSMR 99)
Generation of fast interpreters for Huffman compressed bytecode
Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators
High performance annotation-aware JVM for Java cards
Proceedings of the 5th ACM international conference on Embedded software
Generation of fast interpreters for Huffman compressed bytecode
Science of Computer Programming - Special issue on advances in interpreters, virtual machines and emulators (IVME'03)
The ExoVM system for automatic VM and application reduction
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Revisiting Java Bytecode Compression for Embedded and Mobile Computing Environments
IEEE Transactions on Software Engineering
Tactics for minimal interference from class loading in real-time Java™
JTRES '07 Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems
Slim VM: optimistic partial program loading for connected embedded Java virtual machines
Proceedings of the 6th international symposium on Principles and practice of programming in Java
SlimVM: a small footprint Java virtual machine for connected embedded systems
PPPJ '09 Proceedings of the 7th International Conference on Principles and Practice of Programming in Java
Efficient off-board deployment and customization of virtual machine-based embedded systems
ACM Transactions on Embedded Computing Systems (TECS)
“Slimming” a Java virtual machine by way of cold code removal and optimistic partial program loading
Science of Computer Programming
Romization: early deployment and customization of java systems for constrained devices
CASSIS'05 Proceedings of the Second international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
Optimized java binary and virtual machine for tiny motes
DCOSS'10 Proceedings of the 6th IEEE international conference on Distributed Computing in Sensor Systems
Hi-index | 0.00 |
Embedded systems bring special purpose computing power to consumer electronics devices such as smartcards, CD players and pagers. Java is being aggressively targeted at such systems with initiatives such as the Java 2 Platform, Micro Edition, which introduces certain efficiency optimizations to the Java Virtual Machine. Code size reduction has been identified as an important future goal for ensuring Java's success on embedded systems [20]. However, limited processing power and timing constraints often make traditional compression techniques untenable. An effective solution must meet the conflicting requirements of size reduction and execution performance. We propose modifications to the file format for Java binaries that achieve significant size reduction with little or no performance penalty. Experiments conducted on several large Java class libraries show a typical 25% size reduction for class files and a 50% size reduction for JAR files.