Title
Code Sharing among Virtual Machines
Abstract
Sharing of code among applications executing in separate virtual machines can lead to memory footprint reductions and to performance improvements. The design of a general and acceptable sharing mechanism is challenging because of several constraints: performance considerations, the possibility of dynamic class loading, dependencies between shared code and the runtime system, and the potential of adverse impact on the runtime's reliability and on ease of maintenance. This paper analyzes these tradeoffs in the context of two modifications to the Java驴 virtual machine (JVM驴). The first allows for sharing of bytecodes and class information across multiple virtual machines, each of which executes in a separate operating system process, using shared memory. The second additionally enables the sharing of dynamically compiled code. Their design and performance are evaluated against two other approaches: running each application in a separate instance of an unmodified virtual machine, and running all applications in a single instance of a multitasking virtual machine.
Year
DOI
Venue
2002
10.1007/3-540-47993-7_7
ECOOP
Keywords
Field
DocType
performance improvement,separate virtual machine,performance consideration,separate operating system process,unmodified virtual machine,virtual machines,acceptable sharing mechanism,separate instance,virtual machine,multitasking virtual machine,multiple virtual machine,operating system,shared memory,dynamic compilation
Programming language,Virtual machine,Computer science,Temporal isolation among virtual machines,Data diffusion machine,Compiled language,Virtual finite-state machine,Memory footprint,Tracing just-in-time compilation,Operating system,Runtime system
Conference
Volume
ISSN
ISBN
2374
0302-9743
3-540-43759-2
Citations 
PageRank 
References 
18
1.44
7
Authors
3
Name
Order
Citations
PageRank
Grzegorz Czajkowski1190699.19
Laurent Daynès217222.44
Nathaniel Nystrom348335.19