Method for providing a virtual execution environment on a target computer using a virtual software machine
First Claim
1. A method, using a virtual software machine, for providing a virtual execution environment in a target computer for an application software program having one of more execution dependencies that are incompatible with a software execution environment on the target computer, the virtual software machine comprising a plurality of autonomous and independent processes, pre-processing means, a first program means, and a virtual control mechanism having a virtual management interface (VMI) for generating requests for execution to the plurality of independent processes and receiving results of such processing, comprising the steps of:
- a) identifying, by the pre-processing means, at least one execution dependency of the application software program and in response thereto using the pre-processing means to generate a pre-processed application software program which isolates the identified execution dependency from the application software program;
b) converting, by a compiler means of the target computer, the pre-processed application software program and the virtual control mechanism into object codes;
c) integrating by a link/edit means of the target computer, the object codes of the pre-processed application software program and the virtual control mechanism is substituted for the identified execution dependency of the application software program;
d) generating, by the first program means, a storage area in the target computer;
e) generating a request for execution when the execution dependency is encountered as the executable code is running in the target computer;
f) evaluating the request for execution to identify which of the plurality of independent processes is required to execute the request for execution;
g) delivering the request for execution via the storage area to the identified independent process;
h) processing the request for execution using the identified independent process to thereby execute the request; and
i) returning results of the executed request back to the virtual management interface of the virtual control mechanism such that the application software program is executed despite the execution dependency that is incompatible with the target computer software execution environment.
8 Assignments
0 Petitions
Accused Products
Abstract
A system and method for providing application program portability and consistency across a number of different hardware, database, transaction processing and operating system environments. In the preferred embodiment, the system includes a plurality of processes for performing one or more tasks required by the application software in one or more distributed processors of a heterogenous or "target" computer. In a run-time mode, program code of the application software is pre-processed, compiled and linked with system interface modules to create code executable by a operating system of the target computer. The executable code, which includes a number of functional calls to the processes, is run by the operating system to enable the processes to perform the tasks required by the application software. Communications to and from the processes are routed by a blackboard switch logic through a partitioned storage area or "blackboard".
-
Citations
4 Claims
-
1. A method, using a virtual software machine, for providing a virtual execution environment in a target computer for an application software program having one of more execution dependencies that are incompatible with a software execution environment on the target computer, the virtual software machine comprising a plurality of autonomous and independent processes, pre-processing means, a first program means, and a virtual control mechanism having a virtual management interface (VMI) for generating requests for execution to the plurality of independent processes and receiving results of such processing, comprising the steps of:
-
a) identifying, by the pre-processing means, at least one execution dependency of the application software program and in response thereto using the pre-processing means to generate a pre-processed application software program which isolates the identified execution dependency from the application software program; b) converting, by a compiler means of the target computer, the pre-processed application software program and the virtual control mechanism into object codes; c) integrating by a link/edit means of the target computer, the object codes of the pre-processed application software program and the virtual control mechanism is substituted for the identified execution dependency of the application software program; d) generating, by the first program means, a storage area in the target computer; e) generating a request for execution when the execution dependency is encountered as the executable code is running in the target computer; f) evaluating the request for execution to identify which of the plurality of independent processes is required to execute the request for execution; g) delivering the request for execution via the storage area to the identified independent process; h) processing the request for execution using the identified independent process to thereby execute the request; and i) returning results of the executed request back to the virtual management interface of the virtual control mechanism such that the application software program is executed despite the execution dependency that is incompatible with the target computer software execution environment. - View Dependent Claims (2, 3)
-
-
4. A method, using a virtual software machine, for providing a virtual execution environment in a UNIX-based target computer for an application software program written to execute in a CICS execution environment, the application software program having one or more CICS execution dependencies that are incompatible with a UNIX operating system execution environment on the target computer, the virtual software machine comprising a plurality of autonomous and independent processes, pre-processing means, first and second program means, and a virtual control mechanism having a virtual management interface (VMI) for generating requests for execution to the plurality of independent processes and receiving results of such processing, comprising the steps of:
-
a) identifying, by the pre-processing means, at least one CICS execution dependency of the application software program and in response thereto using the pre-processing means to generate a pre-processed application software program which isolates the identified CICS execution dependency from the application software program; b) converting, by a compiler means of the target computer, the pre-processed application software program and the virtual control mechanism into object codes; c) integrating, by a link/edit means of the target computer, the object codes of the pre-processed application software program and the virtual control mechanism to create executable code wherein the virtual control mechanism is substituted for the identified CICS execution dependency of the application software program; d) generating, by the first program means, a partitioned storage area in the target computer; and e) assigning, by the second program means, each independent process a unique address n the partitioned storage area; f) generating a request for execution when the CICS execution dependency is encountered as the executable code is running in the target computer; g) evaluating the request for execution to identify which of the plurality of independent processes is required to execute the request for execution; h) delivering the request for execution to the unique address in the partitioned storage area for the identified independent process; i) processing the request for execution using the identified independent process to thereby execute the request; and j) returning results of the executed request back to the virtual management interface of the virtual control mechanism such that the application software program is executed despite the CICS execution dependency that is incompatible with the UNIX-based target computer software execution environment.
-
Specification