One of Java's most fundamental core concepts is dynamic class loading. While being very practical in the general purpose domain, the runtime cost of dynamic class loading poses a significant challenge for the deployment of Java applications in embedded systems. In this paper we describe a mechanism called static class loading which allows to perform the resource-intensive class loading process at compile-time while preserving the full class-loading semantics as defined in the Java specification. This eliminates the need for a byte-code interpreter and allows to translate all Java code to native code ahead-of-time, saving valuable resources on the target platform
In real-time and embedded systems, it is often necessary to place conservative upper bounds on the m...
In this thesis I describe an extension to the Java language that supports type-safe dynamic code gen...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
1 Introduction Dynamic class loading [20] is an integral part of the Java programming language, offe...
We suggest a model for dynamic loading and linking as in Java. We distinguish five components in a ...
Dynamic class loading is an integral part of the Java TM programming language, oering a number of...
We describe a static analysis method on Java bytecode to determine class initialization dependencies...
Abstract. We describe a static analysis method on Java bytecode to determine class initialization de...
Modern software must evolve in response to changing conditions. In the most widely used programming ...
Dynamic code evolution is a technique to update a program while it is running. In an object-oriented...
Language runtime systems are increasingly being embedded in systems to support runtime extensibility...
Dynamic binary translation looks to map one computer architecture to another. Java is unusual in tha...
The specification language is a critical component of the hardware-software co-design process since ...
The execution model for mobile, dynamically-linked, object-oriented programs has evolved from fast i...
AbstractWe propose FMJ (Featherweight Multi Java), an extension of Featherweight Java with encapsula...
In real-time and embedded systems, it is often necessary to place conservative upper bounds on the m...
In this thesis I describe an extension to the Java language that supports type-safe dynamic code gen...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
1 Introduction Dynamic class loading [20] is an integral part of the Java programming language, offe...
We suggest a model for dynamic loading and linking as in Java. We distinguish five components in a ...
Dynamic class loading is an integral part of the Java TM programming language, oering a number of...
We describe a static analysis method on Java bytecode to determine class initialization dependencies...
Abstract. We describe a static analysis method on Java bytecode to determine class initialization de...
Modern software must evolve in response to changing conditions. In the most widely used programming ...
Dynamic code evolution is a technique to update a program while it is running. In an object-oriented...
Language runtime systems are increasingly being embedded in systems to support runtime extensibility...
Dynamic binary translation looks to map one computer architecture to another. Java is unusual in tha...
The specification language is a critical component of the hardware-software co-design process since ...
The execution model for mobile, dynamically-linked, object-oriented programs has evolved from fast i...
AbstractWe propose FMJ (Featherweight Multi Java), an extension of Featherweight Java with encapsula...
In real-time and embedded systems, it is often necessary to place conservative upper bounds on the m...
In this thesis I describe an extension to the Java language that supports type-safe dynamic code gen...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...