High speed virtual machine and compiler
AssigneeMatsushita Electric Industrial Co., Ltd.
InventorsHiroyuki Waki, Shinji Inoue, Satoru Hayama, Mitsuko Fujita, Akira Ishikawa
Life of this patent
Estimating the term…
Loading patent…
AssigneeMatsushita Electric Industrial Co., Ltd.
InventorsHiroyuki Waki, Shinji Inoue, Satoru Hayama, Mitsuko Fujita, Akira Ishikawa
Estimating the term…
A virtual machine with a stack architecture includes: a stack 120 whose top level (TOS) and the second level from the top (SOS) are mapped to registers of a real machine 201; an instruction storing unit 102 for storing a virtual machine instruction sequence to be executed; next instruction information storing unit 101 for storing a plurality of sets of next instruction information that are each associated with a different virtual machine instruction in the virtual machine instruction sequence, the set of next instruction information for a given virtual machine instruction indicating a change in a number of sets of data stored in the stack 120 due to execution of a virtual machine instruction executed after the given virtual machine instruction; a decoding unit 103 for decoding a virtual machine instruction and an associated set of next instruction information after reading them from the instruction storing unit 102 and the next instruction information storing unit 101; and an executing unit 110 for executing the decoded virtual machine instruction and performing a stack handling in. the stack 120 in advance for a virtual machine instruction that is to be executed next based on the set of next instruction information.
A virtual machine that executes a virtual machine instruction sequence under control of a real machine, comprising:
A compiler that generates programs for a virtual machine with a stack architecture that includes a stack, comprising:
A virtual machine that executes a virtual machine instruction sequence under control of a real machine, comprising:
A virtual machine that executes a virtual machine instruction sequence under control of a real machine, comprising:
A virtual machine that executes a virtual machine instruction sequence under control of a real machine, comprising:
A virtual machine that executes a virtual machine instruction sequence under control of a real machine, comprising:
A virtual machine that executes a virtual machine instruction sequence under control of a real machine, comprising:
A Just-In-Time (JIT) compiler for use with a virtual machine that executes a virtual machine instruction sequence under control of a real machine, the JIT compiler converting parts of the virtual machine instruction sequence into real machine instruction sequences before execution, and
A storage method used by instruction storing means that stores a virtual machine instruction sequence to be executed by a virtual machine, having a stack architecture, under control of a real machine,
A storage method used by instruction storing means that stores a virtual machine instruction sequence to be executed by a virtual machine under control of a real machine,
A computer-readable recording medium that stores a program to have a computer function as a virtual machine with a stack architecture,
A computer-readable recording medium that stores a program to have a computer function as a compiler that generates a program for a virtual machine with a stack architecture,
A computer-readable recording medium that stores a program to have a computer function as a virtual machine,
A computer-readable recording medium that stores a program to have a computer function as a virtual machine,
A computer-readable recording medium that stores a program to have a computer function as a virtual machine,
A computer-readable recording medium that stores a program to have a computer function as a virtual machine,
A computer-readable recording medium that stores a program to have a computer function as a virtual machine,
A computer-readable recording medium that stores a program to have a computer function as a Just-In-Time (JIT) compiler used with a virtual machine that executes a virtual machine instruction sequence under control of a real machine, the JIT compiler converting parts of the virtual machine instruction sequence into real machine instruction sequences before execution,
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Backward citations are indexed for grants only.
Instruction analysis, e.g. decoding, instruction word fields: special purpose encoding of instructions, e.g. Gray coding
Runtime instruction translation, e.g. macros: of compressed or encrypted instructions
Abstract machines for program code execution, e.g. Java virtual machine [JVM], interpreters or emulators: runtime code conversion or optimisation
Computing and data processing
Term end not estimated
(1) Field of the Invention
The present invention relates to virtual machines and to virtual machine compilers. In particular, the invention relates to a technique for increasing the execution speed of virtual machines.
(2) Description of the Prior Art
These and other objects, advantages and features of the invention will become apparent from the following description thereof taken in conjunction with the accompanying drawings which illustrate a specific embodiment of the invention. In the drawings:
FIG. 1 is a block diagram showing a conventional virtual machine with a stack architecture;
FIG. 2 is an explanation drawing that shows a virtual machine instruction set used in the conventional technique and the present invention;
The following explains embodiments of the present invention, with reference to figures.
First Embodiment
The following describes the virtual machine system of the first embodiment that can absorb a true data dependency.