Techniques for implementing pluggable virtual machines
AssigneeSun Microsystems, Inc.
InventorsSheng Liang, Timothy G. Lindholm
Life of this patent
Estimating the term…
Loading patent…
AssigneeSun Microsystems, Inc.
InventorsSheng Liang, Timothy G. Lindholm
Estimating the term…
Techniques for developing and exchanging virtual machine implementations and/or support library implementations are described. In one embodiment, the virtual machine design specifies a set of functions for executing all or substantially all support library operations that are dependent on the implementation of the virtual machine. When a developer desires to substitute one virtual machine implementation for another, the developer is able to basically “plug-in” the second virtual machine implementation with minimal impact on the support libraries since both virtual machine implementations provide implementations for the set of specified functions that are dependent on the implementation of the respective virtual machine. Conversely, different support libraries may be utilized in conjunction with a particular virtual machine implementation.
A method for developing virtual machine implementations suitable for use in a runtime environment suitable for executing selected code, the method comprising:
A computer program product for implementing virtual machines suitable for use in a runtime environment suitable for executing selected code, the computer program product being embodied in a computer readable media and comprising:
In a runtime environment comprising library functions that call functions declared in virtual machine implementations to execute operations required of the virtual machine and wherein virtual machine operations which are dependent on how the virtual machine is implemented are specified, a method for developing implementations of a virtual machine, comprising:
A virtual machine implementation suitable for use in a runtime environment, the runtime environment having support libraries that include library functions, and a defined virtual machine interface between the support libraries and the virtual machine, the virtual machine interface defining a number of operations that must be performed by the virtual machine implementation, and wherein at least some of the library functions call virtual machine implementation dependent functions that perform operations that are dependent on the particular virtual machine used to perform the operation, and the virtual machine interface being arranged to define substantially all operations that are virtual machine implementation dependant, the virtual machine implementation comprising a set of implementation functions for executing substantially all of the operations defined by the virtual machine interface.
A runtime environment suitable for use in conjunction with at least one virtual machine implementation, the runtime environment including support libraries and a defined virtual machine interface that facilitates communications between the support libraries and the virtual machine implementation, the virtual machine interface defining a number of virtual machine dependent operations that must be performed by the virtual machine implementation;
Dependencies are inferred from the claim text.