US5577233A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for direct conversion of programs in object code from between different hardware architecture computer systems
Assignee: Nokia of America Corp
•
Filing: 1995-09-25
•
Granted: 1996-11-19
•
Expires: 2015-09-25
Abstract
Abstract Application programs compiled for a first, "source", computer are translated, from their object form, for execution on a section, "target", computer. The translated application programs are linked or otherwise bound with a translation of the source computer system software. The translated system software operates on the image of the source computer address space in the target computer exactly as it did in the source computer. The semantics of the source computer system softwae are thus preserved identically. In addition, a virtual hardware environment is provided in the target computer to manage events and to deal with differences in the address space layouts between the source and target computers.
Inventors
- 👤 John C. Goettelmann
- 👤 Christopher J. Macey
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-26 09:09
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/52
Claims Analysis
Total Claims: 11
Claim 1
Independent Claim
207 words
A method for translating off-line a first non-source code version of a computer program expressed in terms of a first instruction set, the first version of the computer program being executable on a source computer, to a second non-source code version of the computer program expressed in terms of a second instruction set different from the first instruction set, the second version being executable on a target computer different from the source computer, at least one instruction in the first version of the computer program having primary and side effects, the method comprising the computer implemented steps of: producing a complete intermediate language representation of the entire first non-source code version of the computer program by expanding instructions of the first non-source code version into a plurality of intermediate language instructions which explicitly replicate primary and side effects of all the instructions of the first version; processing the entire intermediate language representation to eliminate individual instructions whose elimination does not affect any substantial functionality of the program; and creating from the intermediate language representation a second non-source code version of the entire program having a functionality substantially the same as the first version, the second non-source code version being executable on the target computer without further translation.
Claim 2
Independent Claim
207 words
A method for translating off-line a first non-source code version of a computer program expressed in terms of a first instruction set, the first version of the computer program being executable on a source computer, to a second non-source code version of the computer program expressed in terms of a second instruction set different from the first instruction set, the second version being executable on a target computer different from the source computer, at least one instruction in the first version of the computer program having primary and side effects, the method comprising the computer implemented steps of: producing a complete intermediate language representation of the entire first non-source code version of the computer program by expanding instructions of the first non-source code version into a plurality of intermediate language instructions which explicitly replicate primary and side effects of all the instructions of the first version; processing the entire intermediate language representation to eliminate individual instructions whose elimination does not affect any substantial functionality of the program; and creating from the intermediate language representation a second non-source code version of the entire program having a functionality substantially the same as the first version, the second non-source code version being executable on the target computer without further translation.
Claim 3
Dependent Claim
22 words
The method of claim 1, in which the eliminated instructions comprise instructions which calculate information which is not used by the program.
Claim 4
Dependent Claim
24 words
A non-source code computer program translated from a different non-source code version of the computer program in accordance with the method of claim 2.
Claim 5
Dependent Claim
32 words
The method of claim 1, in which the processing step comprises a step of performing data flow analysis over the entire intermediate language representation to identify intermediate language instructions to be eliminated.
Claim 6
Dependent Claim
24 words
A non-source code computer program translated from a different non-source code version of the computer program in accordance with the method of claim 4.
Claim 7
Dependent Claim
50 words
The method of claim 1, in which the processing step comprises a step of using a pattern recognition technique to identify groups of instructions in the intermediate language representation which can be replaced by an equivalent smaller number of instructions in the second non-source code version of the computer program.
Claim 8
Dependent Claim
24 words
A non-source code computer program translated from a different non-source code version of the computer program in accordance with the method of claim 6.
Claim 9
Dependent Claim
50 words
The method of claim 1, in which the processing step comprises a step of using a pattern recognition technique to identify a sequence of instructions in the intermediate representation which can be replaced by an equivalent reordered sequence of instructions in the second non-source code version of the computer program.
Claim 10
Dependent Claim
24 words
A non-source code computer program translated from a different non-source code version of the computer program in accordance with the method of claim 8.
Claim 11
Dependent Claim
24 words
A non-source code computer program translated from a different non-source code version of the computer program in accordance with the method of claim 1.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1999-11-19 | 2000-05-20 | 2000-11-19 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2003-11-19 | 2004-05-20 | 2004-11-19 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2007-11-19 | 2008-05-20 | 2008-11-19 | $7700.00 | Window Closed / Lapsed |