IP Library Patent Application 12962271
Patent Application
App. No. 12/962,271

MULTI-MODAL COMPILING APPARATUS AND METHOD FOR GENERATING A HYBRID CODEFILE

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
12/962,271
Abstract

A non-native, multi-modal compiler and an emulated computing environment for use in a native computing environment. The multi-modal compiler includes a parser configured to parse or divide received source code into a plurality of token elements, whereby at least one statement is recognized from a collection of token elements. The multi-modal compiler also includes a code emitter configured to emit machine code to implement the at least one statement, whereby the emitted machine code is compiled multi-modal object code that includes non-native operators (e.g., E-Mode operators) and NATV operators. The compiled multi-modal object code is configured in such a way that when translated by a code translation unit, the compiled multi-modal object code generates a merged codefile having translated native code segments corresponding to the non-native operators and native code segments corresponding to the NATV operators. The merged codefile is executable by a native processor in the native computing environment.

Claims (34)

1 . A multi-modal compiling apparatus, wherein the multi-modal compiling apparatus is a non-native compiler for use in a native computing environment, comprising:

a parser configured for receiving a program source code, wherein the parser is configured to manipulate at least a portion of the program source code into a plurality of token code elements in such a way that at least one statement is recognized from a collection of token code elements; and

a code emitter configured to emit machine code to implement at least one statement, wherein the emitted machine code comprises compiled multi-modal object code corresponding to the program source code, wherein the compiled multi-modal object code includes at least one first or non-native operator and at least one second or NATV operator,

wherein the compiled multi-modal object code is configured to generate a merged codefile having at least one translated native code segment corresponding to the at least one non-native operator and at least one native code segment corresponding to the at least one NATV operator,

wherein the merged codefile is executable by a native processor within the native computing environment.

2 . The apparatus as recited in claim 1 , wherein the compiled multi-modal object code includes at least one first or non-native code segment and at least one second or non-native/NATV code segment.

3 . The apparatus as recited in claim 2 , wherein the at least one first or non-native code segment includes at least one non-native operator, and wherein the at least one second or non-native/NATV code segment includes at least one non-native/NATV code segment extension portion having at least one non-native operator and at least one NATV operator.

4 . The apparatus as recited in claim 2 , wherein the at least one second or non-native/NATV code segment includes at least one second or normal code segment portion residing behind a corresponding NATV operator from a non-native/NATV code segment extension portion.

5 . The apparatus as recited in claim 1 , wherein the merged codefile is generated by a code translation unit coupled to the multi-modal compiler and configured for receiving compiled multi-modal object code.

6 . The apparatus as recited in claim 5 , wherein the code translation unit includes a dynamic binary translation (DBT) module that performs dynamic binary translation, and wherein the translated native code segment includes DBT native code.

7 . The apparatus as recited in claim 1 , wherein the emulated computing environment includes a Master Control Program (MCP) environment, and wherein the operating system in the first computing environment is the MCP operating system, and wherein at least one of the non-native operators includes an E-Mode operator.

8 . The apparatus as recited in claim 1 , wherein the native computing environment includes a native processor, and wherein the multi-modal compiling apparatus is included within an interpreter, and wherein the interpreter is included within the native processor.

9 . An emulated computing environment for use within a native computing environment having a native processor, comprising:

a non-native compiler configured for receiving a program source code, wherein the non-native compiler is configured to generate a compiled multi-modal object code corresponding to the program source code, wherein the compiled multi-modal object code includes at least one first or non-native code segment and at least one second or non-native/NATV code segment; and

a non-native translator coupled to the non-native compiler and configured for receiving compiled multi-modal object code, wherein the non-native translator is configured to generate a merged codefile having at least one translated native code segment corresponding to the at least one non-native operator and at least one native code segment corresponding to the at least one NATV operator,

wherein the merged codefile is configured to be executed by the native processor.

10 . The emulated computing environment as recited in claim 9 , wherein the at least one first or non-native code segment includes at least one non-native operator, and wherein the at least one second or non-native/NATV code segment includes at least one non-native/NATV code segment extension portion having at least one non-native operator and at least one NATV operator.

11 . The emulated computing environment as recited in claim 10 , wherein the at least one second or non-native/NATV code segment includes at least one second or normal code segment portion residing behind a corresponding NATV operator from a non-native/NATV code segment extension portion.

12 . The emulated computing environment as recited in claim 9 , wherein the emulated computing environment includes a Master Control Program (MCP) environment, and wherein the operating system in the first computing environment is the MCP operating system, and wherein at least one of the non-native operators includes an E-Mode operator.

13 . The emulated computing environment as recited in claim 9 , wherein the non-native translator includes a dynamic binary translation (DBT) module that performs dynamic binary translation, and wherein the translated native code segment includes DBT native code.

14 . The emulated computing environment as recited in claim 9 , wherein the native computing environment includes a native processor, and wherein the non-native compiler and the non-native translator are included within an interpreter, and wherein the interpreter is included within the native processor.

15 . A method for generating a hybrid codefile for execution in a native computing environment, comprising:

receiving a program source code by a parser configured to manipulate at least a portion of the program source code into a plurality of token code elements in such a way that at least one statement is recognized from a collection of token code elements;

emitting machine code by a code emitter configured to implement at least one statement, wherein the emitted machine code comprises compiled multi-modal object code corresponding to the program source code, wherein the compiled multi-modal object code includes at least one first or non-native code segment and at least one second or non-native/NATV code segment; and

translating by a code translation unit the compiled multi-modal object code into a merged codefile having at least one translated native code segment corresponding to the at least one first or non-native code segment and at least one native code segment corresponding to the at least one second or non-native/NATV code segment,

wherein the merged codefile is executable by a native processor within the native processing environment.

16 . The method as recited in claim 15 , wherein the at least one first or non-native code segment includes at least one non-native operator, and wherein the at least one second or non-native/NATV code segment includes at least one non-native/NATV code segment extension portion having at least one non-native operator and at least one NATV operator.

17 . The method as recited in claim 16 , wherein the at least one second or non-native/NATV code segment includes at least one second or normal code segment portion residing behind a corresponding NATV operator from a non-native/NATV code segment extension portion.

18 . The method as recited in claim 15 , wherein the emulated computing environment includes a Master Control Program (MCP) environment, and wherein the operating system in the first computing environment is the MCP operating system, and wherein at least one of the non-native operators includes an E-Mode operator.

19 . The method as recited in claim 15 , wherein the code translation unit includes a dynamic binary translation (DBT) module that performs dynamic binary translation, and wherein the translated native code segment includes DBT native code.

20 . A hybrid code stream, comprising:

at least one first or non-native code segment having at least one non-native code portion; and

at least one second or non-native/NATV code segment having at least one non-native/NATV code segment extension portion, wherein the at least one non-native/NATV code segment portion includes at least one non-native operator and at least one NATV operator, and wherein the at least one second or non-native/NATV code segment includes at least one second or normal code portion residing behind a corresponding NATV operator from,

wherein the hybrid codefile is configured for execution by a native processor.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Oct 28, 2020
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: UNISYS CORPORATION
Reel/Frame 054231/0496 →
RELEASE OF SECURITY INTEREST Recorded Nov 9, 2017
From: WELLS FARGO BANK, NATIONAL ASSOCIATION (SUCCESSOR TO GENERAL ELECTRIC CAPITAL CORPORATION)
To: UNISYS CORPORATION
Reel/Frame 044416/0358 →
PATENT SECURITY AGREEMENT Recorded Apr 27, 2017
From: UNISYS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 042354/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2014
From: BEALE, ANDREW WARD; THOMAS, DAMIAN JOHN; MEYERS, ROBERT JOSEPH
To: UNISYS CORPORATION
Reel/Frame 033463/0754 →
RELEASE OF SECURITY INTEREST Recorded Mar 26, 2013
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL TRUSTEE
To: UNISYS CORPORATION
Reel/Frame 030082/0545 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2013
From: DEUTSCHE BANK TRUST COMPANY
To: UNISYS CORPORATION
Reel/Frame 030004/0619 →
SECURITY AGREEMENT Recorded Jun 27, 2011
From: UNISYS CORPORATION
To: GENERAL ELECTRIC CAPITAL CORPORATION, AS AGENT
Reel/Frame 026509/0001 →
SECURITY AGREEMENT Recorded Mar 1, 2011
From: UNISYS CORPORATION
To: DEUTSCH BANK NATIONAL TRUST COMPANY; GLOBAL TRANSACTION BANKING
Reel/Frame 025864/0519 →