Method and apparatus for executing distributed objects over a network
AssigneeSun Microsystems, Inc.
InventorAlejandro H. Abdelnur
Life of this patent
Estimating the term…
Abstract
A method and apparatus for developing, distributing, and executing workers (e.g., objects) of an application in a client computer and over a network of computers in a manner that is hidden to a user or programmer. The workers may be distributed to any computer (e.g., server computer) in the network and can be located by a requesting computer (e.g., client computer). The distributed workers may be executed locally or remotely to produce an output value for use in a requesting computer application. Interprocess communications between the requesting computer and other network computers are hidden to a client computer user.
Claims14
A method for executing a distributed object of a program over a network of computers, comprising the steps of:
- distributing an object of a compiled program from a local computer to a remote computer connected to the local computer over a network;
- running the program on the local computer;
- sending a request for the object from the local computer to the remote computer;
- providing a response from the remote computer to the local computer identifying the location of the object;
- sending a second request including an identifier for the object from the local computer to the remote computer;
- executing the object on the remote computer to produce an output value using input values included in the second request;
- and
- routing the output value to the local computer over the network for use in the running program.
A method for executing a distributed object of a program on a server computer connected to a network, comprising the steps of:
- receiving a request from a source computer for an object stored in a memory of the server computer, the object originating from a complied program on the source computer;
- searching the memory of the server computer to locate the object;
- providing a result message to the source computer including an identifier of the requested object;
- receiving a second request from the source computer including the identifier and input values;
- retrieving a copy of the object from memory;
- executing the object using the input values included in the second request to produce an output value;
- and
- sending the output value to the source computer for use in a running program.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, comprising the steps of:
- distributing an object of a compiled object-oriented code program from a local computer to a remote computer connected over a network;
- running the program on the local computer;
- determining a need to invoke the object in the running program;
- sending a request for the object from the local computer to the remote computer;
- providing a response identifying a location of the object from the remote computer to the local computer;
- sending a second request including an identifier for the object from the local computer to the remote computer;
- executing an instance of the object on the remote computer to produce an output value using input values included in the second request;
- and
- sending the output value to the local computer over the network for use in the running program.
A data processing system, comprising:
- means for distributing an object of an object-oriented code program from a first computer to a second computer connected over a network;
- means for running the program on the first computer;
- means for determining a need to invoke the object in the running program;
- means for sending a request for the object from the first computer to the second computer;
- means for providing a response identifying a location of the object from the second computer to the first computer;
- means for sending a second request including an identifier for the object from the first computer to the second computer;
- means for executing an instance of the object on the second computer to produce an output value using input values included in the second request;
- and
- means for sending the output value to the first computer over the network for use in the running program.
Dependencies are inferred from the claim text.