Remote procedure calling using an existing descriptor mechanism
First Claim
1. A method for implementing remote procedure calling within a computer system, operation of which is managed by an operating system which includes file system data structures which in turn represent respective states of respective resources of the computer system, the operating system utilizing one or more resource control procedures for controlling the resources on behalf of a computer process, the method comprising:
- forming in the operating system a door resource data structure which represents a door remote procedure calling resource, the door resource data structure including a file system data structure and one or more extensions which are adapted to represent the state of the door remote procedure calling resource; and
controlling the door remote procedure calling resource on behalf of the computer processes by execution of one or more of the resource control procedures which in turn access the door resource structure to allow a remote procedure call to be made by the computer process utilizing the door resource data structure.
5 Assignments
0 Petitions
Accused Products
Abstract
Doors are implemented in an existing operating system by using a novel adaptation of existing data structures and procedures which represent and control data files of the operating system. A door is represented by a file descriptor and is managed by existing mechanisms of an operating system, such as the Unix operating system, which are also used to manage files. A door is represented by a door node, which is a novel extension of the conventional vnode structure which in turn is used in conventional operating systems to represent the state of a computer resource, e.g., a data file. A door node is adapted such that most conventional file access and control procedures, e.g., procedures open( ) and close( ), can be used to access and control door with minimal adaptation. A door node is formed by appending fields which are specific to a door node'"'"'s representation of the state of a door to fields of the door node which are analogous to the fields of a vnode, which represents the state of a resource and which has a conventional structure. Thus, the fields of a door node which precede the fields specific to the representation of the state of a door are of the size, location, and format of analogous fields in a conventional vnode. A client process obtains a file descriptor which identifies a door by supplying the name of the door to the operating system.
-
Citations
38 Claims
-
1. A method for implementing remote procedure calling within a computer system, operation of which is managed by an operating system which includes file system data structures which in turn represent respective states of respective resources of the computer system, the operating system utilizing one or more resource control procedures for controlling the resources on behalf of a computer process, the method comprising:
-
forming in the operating system a door resource data structure which represents a door remote procedure calling resource, the door resource data structure including a file system data structure and one or more extensions which are adapted to represent the state of the door remote procedure calling resource; and
controlling the door remote procedure calling resource on behalf of the computer processes by execution of one or more of the resource control procedures which in turn access the door resource structure to allow a remote procedure call to be made by the computer process utilizing the door resource data structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for implementing remote procedure calling, the method comprising:
-
forming in an operating system a door resource data structure including a file system data structure with one or more extensions;
constructing the client computer process which when executed will utilize the door resource data structure in the operating system to place a remote procedure call;
executing the client computer process;
the client process requesting from the operating system access to the remote procedure for execution by a server computer process by supplying to the operating system a name associated with the remote procedure; and
the client process receiving from the operating system a file descriptor which identifies the remote procedure within the operating system.
-
-
11. A remote procedure calling system implemented in an operating system which includes file system data structures which in turn represent respective states of respective resources of a computer system, whose operation is controlled by the operating system, the operating system utilizing one or more resource control procedures for controlling the resources on behalf of one or more computer processes, the remote procedure calling system comprising:
-
a door resource data structure which represents a door remote procedure calling resource which includes a file system data structure and one or more extensions which are operatively coupled to the file system data structure and which are adapted to represent the state of the door remote procedure calling resource; and
wherein one or more of the resource control procedures are operatively coupled to the door resource data structure and are configured to control the door remote procedure calling resource on behalf of the one or more computer processes to allow remote procedure calls to be made by one or more computer processes. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
further wherein the one or more extensions are coupled to the file system data structure such that the conventional organization of the file system data structure is preserved.
-
-
16. The remote procedure calling system of claim 15 wherein the one or more extensions are appended to the conventional organization.
-
17. The remote procedure calling system of claim 11 wherein the file system data structures are each a vnode.
-
18. The remote procedure calling system of claim 17 wherein the one or more extensions are appended to the selected vnode.
-
19. The remote procedure calling system of claim 18 wherein the one or more extensions include one or more fields of data, each of which represents a component of the state of the door remote procedure calling resource.
-
20. A remote procedure calling system comprising:
-
a door resource data structure which represents a door remote procedure calling resource, the door resource data structure including a file system data structure and one or more extensions which are adapted to represent the state of the door remote procedure calling resource;
a name module which is configured to receive from a client computer process a name associated with a remote procedure for execution by a server computer process; and
a file descriptor production module which is coupled to the name module and which provides to the client computer process a file descriptor which identifies the remote procedure;
wherein, the door remote procedure calling resources controlled by the remote procedure calling system to allow a remote procedure call to be made.
-
-
21. A computer system comprising a computer processor, a memory operatively coupled to the computer processor, one or more resources operatively coupled to the computer processor, and an operating system which is operatively coupled to the computer processor and the memory, the operating system including:
-
file system data structures which represent respective states of respective ones of the resources;
one or more resource control procedures for controlling the resources on behalf of one or more computer processes, wherein the resources include a door resource data structure which represents door remote procedure calling resource, the door resource data structure further including a file system data structure and one or more extensions which are operatively coupled to the file system data structure and which are adapted to represent the state of the door remote procedure calling resource; and
wherein the resource control procedures are operatively coupled to the door resource data structure and are configured to control the door remote procedure calling resource on behalf of the one or more computer processes to allow remote procedure calls to be made by one or more of the computer processes. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29)
further wherein the one or more extensions are coupled to the file system data structure such that the conventional organization conventional resource data structure is preserved.
-
-
26. The computer system of claim 25 wherein the one or more extensions are appended to the conventional organization.
-
27. The computer system of claim 21 wherein the file system structures are each a vnode.
-
28. The computer system of claim 27 wherein the one or more extensions are appended to the selected vnode.
-
29. The computer system of claim 28 wherein the one or more extensions include one or more fields of data, each of which represents a component of the state of the door remote procedure calling resource.
-
30. A computer program product comprising:
-
a computer usable medium having computable readable code embodied therein for implementing remote procedure calling in an operating system which includes file system data structures which in turn represent respective states of respective resources of a computer system, whose operation is controlled by the operating system, and which includes one or more resource control procedures for controlling the resources on behalf of one or more computer processes, the computer readable code comprising;
a door structure maintenance module configured to maintain a door resource data structure which represents a door remote procedure calling resource, the door resource data structure including a file system data structure and one or more extensions which are operatively coupled to the file system data structure and which are adapted to represent the state of the door remote procedure calling resource; and
a door resource control module which is operatively coupled to the door structure maintenance module and which includes one or more of the resource control procedures, which are operatively coupled to the door resource data structure and which are configured to control the door remote procedure calling resource on behalf of the one or more computer processes to allow remote procedure calls to be made. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38)
further wherein the one or more extensions are coupled to the file system data structure such that the conventional organization of the file system data structure is preserved.
-
-
35. The computer program product of claim 34 wherein the one or more extensions are appended to the conventional organization.
-
36. The computer program product of claim 31 wherein the file system data structures are each a vnode.
-
37. The computer program product of claim 36 wherein the one or more extensions are appended to the selected vnode.
-
38. The computer program product of claim 37 wherein the one or more extensions include one or more fields of data, each of which represents a component of the state of the door remote procedure calling resource.
Specification