Method and system for implementing remote procedure calls in a distributed computer system
First Claim
Patent Images
1. A structure for sharing data objects in application programs of a distributed computer system, said distributed computer system comprising first and second computers, said structure comprising:
- a first application level interface, in said first computer, to a first remote procedure call mechanism;
a second application level interface, in said second computer, to a second remote procedure call mechanism;
means, in said first and second computers, for coupling said first and said second remote procedure call mechanisms, for transporting data between said first and second computers;
first means, coupled to said first application level interface, for providing a data structure representing a base class of sharable objects, each sharable object being accessible by processes in said first and second computers;
second means, coupled to said second application level interface, for providing said data structure representing said base class of sharable objects;
first means, coupled to said first application level interface, for providing data structures representing a plurality of classes of sharable objects each derived, in accordance with a hierarchy of classes, from said base class, each sharable object in each of said plurality of classes of sharable objects being accessible by processes in said first and second computers;
second means, coupled to said second application level interface, for providing said data structures representing said plurality of classes of sharable objects;
first means, in said first computer, for constructing an inheritance tree rooted in a data structure representing said base class, said inheritance tree having data structures representing relationships among said classes of sharable objects and said base class, in accordance with said hierarchy of classes;
second means, in said second computer, for constructing said inheritance tree in said second computer;
first means, in said first computer, for traversing said inheritance tree to construct a data structure representing a relationship between a first object and a second object in said first computer, said first object being specified in a machine-independent format by a process in said second computer via said first and second remote procedure call mechanisms; and
second means, in said second computer, for traversing said inheritance tree to construct a data structure representing a relationship between a first object and a second object in said second computer, said first object being specified by a process in said first computer, via said first and second remote procedure call mechanisms.
4 Assignments
0 Petitions
Accused Products
Abstract
A system and a method for implementing remote procedure calls in a distributed computer system provide a base object class from which all distributed objects can be derived. A program extracting all classes derived from the base class provides an inheritance tree to allow down casting from a root class to a base class and to allow passing high level data structure between participants of a remote procedure call. An Unix script provides stub routines for implementing a client-server model communicating processes.
372 Citations
20 Claims
-
1. A structure for sharing data objects in application programs of a distributed computer system, said distributed computer system comprising first and second computers, said structure comprising:
-
a first application level interface, in said first computer, to a first remote procedure call mechanism; a second application level interface, in said second computer, to a second remote procedure call mechanism; means, in said first and second computers, for coupling said first and said second remote procedure call mechanisms, for transporting data between said first and second computers; first means, coupled to said first application level interface, for providing a data structure representing a base class of sharable objects, each sharable object being accessible by processes in said first and second computers; second means, coupled to said second application level interface, for providing said data structure representing said base class of sharable objects; first means, coupled to said first application level interface, for providing data structures representing a plurality of classes of sharable objects each derived, in accordance with a hierarchy of classes, from said base class, each sharable object in each of said plurality of classes of sharable objects being accessible by processes in said first and second computers; second means, coupled to said second application level interface, for providing said data structures representing said plurality of classes of sharable objects; first means, in said first computer, for constructing an inheritance tree rooted in a data structure representing said base class, said inheritance tree having data structures representing relationships among said classes of sharable objects and said base class, in accordance with said hierarchy of classes; second means, in said second computer, for constructing said inheritance tree in said second computer; first means, in said first computer, for traversing said inheritance tree to construct a data structure representing a relationship between a first object and a second object in said first computer, said first object being specified in a machine-independent format by a process in said second computer via said first and second remote procedure call mechanisms; and second means, in said second computer, for traversing said inheritance tree to construct a data structure representing a relationship between a first object and a second object in said second computer, said first object being specified by a process in said first computer, via said first and second remote procedure call mechanisms. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for sharing data objects in application programs of a distributed computer system, said distributed computer system comprising first and second computers, said method comprising the steps of:
-
providing, in said first computer, a first application level interface to a first remote procedure call mechanism in said first computer; providing, in said second computer, a second application level interface to a second remote procedure call mechanism in said second computer; coupling said first and second remote procedure call mechanisms in said first and second computers so as to transport data between said first and second computers; providing a data structure in each of said first and second computers for representing a base class of sharable objects in said first and second computers and providing data structures in each of said first and second computers for representing a plurality of classes of sharable objects each derived from said base class; and providing, in each of said first and second computers, an inheritance tree rooted in a data structure representing said base class, said inheritance tree having data structures relating, in accordance with a hierarchy, said plurality of classes and said base class; and traversing, in each of said first and second computers, said inheritance tree to construct a data structure representing a relationship between a first object and a second object, whenever said first object is specified by a process in one of said first and second computers and provided to the other of said first and second computers via said remote procedure call mechanisms in said first and second computers. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification