Self-registering objects for an IPC mechanism
First Claim
Patent Images
1. A computer system, comprising:
- a processor coupled to a computer-readable storage medium, the computer readable storage medium including;
instructions for executing an operating system, the operating system having a kernel, wherein the kernel includes instructions for maintaining a table for a first process and a table for a second process, wherein the kernel is solely able to access the table for the first process and the table for the second process;
instructions for configuring an inter-process communication channel between the first process and the second process;
instructions for sending, by the first process, a reference to an object controlled by the first process to the second process via the inter-process communication channel, wherein the object includes a method operation;
instructions for detecting, by the kernel that the first process exported the reference interface to an object to the second process by monitoring information sent via the inter-process communication channel and determining that the reference to the object was sent;
instructions for determining, by the kernel, that the reference for the object has not been previously exported to the second process by searching the table for the second process;
instructions for generating, in response to determining that the reference for the object has not been previously exported to the second process, a local name for the reference for the object and associating the local name for the reference for the object with a name for the object;
instructions for generating, by the kernel, an entry in the table for the second process, the entry including information that identifies that the object is foreign to the second process and local to the first process, the local name for the reference for the object and the name for the object; and
instructions for making, by the kernel, the local name for the reference for the object table available to the second process.
2 Assignments
0 Petitions
Accused Products
Abstract
In response to receiving a communication from a first process directed to a second process, a trusted entity determines if an object reference in the communication refers to an object owned by a first process which is being exported to a second process or if the communication refers to an object not owned by the first process which is being passed to the second process. The trusted entity generates a second object reference for use by the second process. Use of a naming convention identifies the reference as a reference to an object which is foreign to or owned by the processes.
-
Citations
17 Claims
-
1. A computer system, comprising:
-
a processor coupled to a computer-readable storage medium, the computer readable storage medium including; instructions for executing an operating system, the operating system having a kernel, wherein the kernel includes instructions for maintaining a table for a first process and a table for a second process, wherein the kernel is solely able to access the table for the first process and the table for the second process; instructions for configuring an inter-process communication channel between the first process and the second process; instructions for sending, by the first process, a reference to an object controlled by the first process to the second process via the inter-process communication channel, wherein the object includes a method operation; instructions for detecting, by the kernel that the first process exported the reference interface to an object to the second process by monitoring information sent via the inter-process communication channel and determining that the reference to the object was sent; instructions for determining, by the kernel, that the reference for the object has not been previously exported to the second process by searching the table for the second process; instructions for generating, in response to determining that the reference for the object has not been previously exported to the second process, a local name for the reference for the object and associating the local name for the reference for the object with a name for the object; instructions for generating, by the kernel, an entry in the table for the second process, the entry including information that identifies that the object is foreign to the second process and local to the first process, the local name for the reference for the object and the name for the object; and instructions for making, by the kernel, the local name for the reference for the object table available to the second process. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method for self-registering resources in an inter-process communication mechanism comprising:
-
maintaining, by a kernel, a table for a first process, a table for a second process, and a table for a third process, wherein the kernel is solely able to access the table for the first process, the table for the second process and the table for the third process; establishing an inter-process communication channel between the first process and the second process; detecting, by the kernel, that the first process exported a first process local name for a resource to an object controlled by the third process to the second process by monitoring information sent via the inter-process communication channel, the object including a method operation; determining, by the kernel, that the resource for the object controlled by the third process has not been previously exported to the second process by searching the table for the second process and in response to determining that the resource for the object controlled by the third process has not been previously exported to the second process; determining, by the kernel, that the resource is controlled by the third process and generating a second process local name for the resource; generating, by the kernel, an entry in the table for the second process, the entry including information that identifies that the object is foreign to the second process, local to the third process, and the second process local name for the resource; and sending, by the kernel, a signal to the second process, the signal indicating that the table has been updated and including the second process local name for the resource. - View Dependent Claims (7, 8, 9)
-
-
10. A computer-readable storage medium comprising computer-executable instructions for:
-
maintaining, by a kernel, a table for a first process, a table for a second process, and a table for a third process, wherein the kernel is solely able to access the table for the first process, the table for the second process and the table for the third process; establishing an inter-process communication channel between the first process and the second process; detecting, by the kernel, that the first process exported a first process local name for a resource to an object controlled by the third process to the second process by monitoring information sent via the inter-process communication channel, the object including a method operation; determining, by the kernel, that the resource for the object controlled by the third process has not been previously exported to the second process by searching the table for the second process and in response to determining that the resource for the object controlled by the third process has not been previously exported to the second process; determining, by the kernel, that the resource is controlled by the third process and generating a second process local name for the resource; generating, by the kernel, an entry in the table for the second process, the entry including information that identifies that the object is foreign to the second process, local to the third process, and the second process local name for the resource; and sending, by the kernel, a signal to the second process, the signal indicating that the table has been updated and including the second process local name for the resource. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification