Claims Analysis
Total Claims: 12
Claim 1
Independent Claim
83 words
Apparatus for dividing execution of a program (117) between a caller process and a callee process running in a computer system, the apparatus being characterized by: means (1005) for making a determination whether a process (107) executing the program is a caller process or a callee process; and in the program, a caller portion (210) a callee portion (213), and a selecting portion (209) for selecting either the caller portion or the callee portion for execution by the process according to the determination.
Claim 2
Dependent Claim
83 words
The apparatus set forth in claim 1 further characterized by: another process (131(a)); means responsive to execution of the caller portion by the process (107) for sending a message (1019) requesting that the other process execute the program; means (1105) in the other process for receiving the message, making the determination in response thereto, and commencing execution of the selecting portion of the program, whereby the other process is able to execute the program as either a caller process or a callee process.
Claim 3
Dependent Claim
62 words
The apparatus set forth in claim 2 further characterized in that: the other process has access to namespace (133) means for relating a first name identifying the program to a location of a copy of the program; and the program further includes an initialization portion (205) which is executed by the other process in order to install the program in the namespace.
Claim 4
Dependent Claim
102 words
The apparatus set forth in claim 2 further characterized by: a further process (131(b)), the further process having message receiving means like those in the other process; and wherein the other process has means (1023) responsive to the caller portion for sending a message (1019) to the further process requesting that the further process execute the program; and the means for receiving the message determines whether the callee portion is to be executed by the other process or the further process and causes the determination to indicate a callee process in the first case and a caller process in the second case.
Claim 5
Dependent Claim
75 words
The apparatus set forth in claim 4 further characterized by: namespace means (133) accessible to the other process for relating a first name identifying the program either to a location of a copy of the program or to a second name identifying the further process; and the means for receiving the message determines whether the called portion is to be executed by the other process or the further process in response to the namespace means.
Claim 6
Dependent Claim
69 words
The apparatus set forth in claim 2 further characterized in that: the apparatus is implemented in a distributed computing system including a plurality of processing nodes (101); the process and the other process execute on different ones of the nodes; and the means for sending a message sends the message from the node upon which the process is executing to the node upon which the other process is executing.
Claim 7
Independent Claim
65 words
The apparatus set forth in any of claims 2, 4, or 5 further characterized in that: the means responsive to execution of the caller portion includes means (1023) for receiving a return message from the other process with results of execution of the program; and the means for receiving the message includes means (1016) for sending the return message with the results to the process.
Claim 8
Dependent Claim
46 words
The apparatus set forth in claim 7 further characterized in that: the means for sending a message, the means for receiving a message, the means for sending a result message, and the means for receiving a return message are provided by remote procedure call means (1017).
Claim 9
Dependent Claim
130 words
The apparatus set forth in claim 7 further characterized in that: the message and the return message employ a first representation of the data which is different from a second representation of the data employed in the computer system; the message includes an argument value; the return message returns a result value; the program further includes an argument converter portion (201) and a result converter portion (203); the means for sending a message and the means for receiving a message use the argument converter portion to convert argument values between the first representation and the second representation; and the means for sending a return message and the means for receiving the return message use the result converter portion to convert result values between the first representation and the second representation.
Claim 10
Dependent Claim
152 words
A client-server system of the type wherein a server process (131) executing in a computer system provides a service for a client process (107), the client-server system being characterized by: server name space means (133) employed by the server process to relate a name for the service to means (117) for providing the service, the name being part of a server namespace distinct from any system namespace provided to the server process by the computer system, service calling means (1016) employed by the client process to send a message to the server which includes the name for the service; and service dispatching means (1105) employed by the server process for responding to the name for the service in the message by employing the server name space means to locate the means for providing the service and thereupon to employ the means for providing the service to provide the service to the client.
Claim 11
Dependent Claim
38 words
The client-server system set forth in claim 10 further characterized by: one or more namespace manipulation services (1201) which the server process provides to the client process and which the client process employs to manipulate the server namespace.
Claim 12
Dependent Claim
37 words
The client-server system set forth in claim 11 further characterized by: a make service service (605) of the namespace manipulation services which relates a new name in the server namespace to means for providing a new service.