Designing Highly Flexible Virtual Machines: The JnJVM Experience - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue Software: Practice and Experience Année : 2008

Designing Highly Flexible Virtual Machines: The JnJVM Experience

Résumé

Dynamic flexibility is a major challenge in modern system design to react to context or applicative requirements evolutions. Adapting behaviors may impose substantial code modification across the whole system, in the field, without service interruption and without state loss. This paper presents the JnJVM, a full Java virtual machine (JVM) that satisfies these needs by using dynamic aspect weaving techniques and a component architecture. It supports adding or replacing its own code, while it is running, with no overhead on unmodified code execution. Our measurements reveal similar performance when compared with the monolithic JVM Kaffe. Three illustrative examples show different extension scenarios: (i) modifying the JVMs behavior; (ii) adding capabilities to the JVM; and (iii) modifying applications behavior.

Dates et versions

hal-01197381 , version 1 (11-09-2015)

Identifiants

Citer

Gaël Thomas, Nicolas Geoffray, Charles Clément, Bertil Folliot. Designing Highly Flexible Virtual Machines: The JnJVM Experience. Software: Practice and Experience, 2008, 38 (15), pp.1643-1675. ⟨10.1002/spe.887⟩. ⟨hal-01197381⟩
59 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More