System and method for shared memory based IPC queue template having event based notification
First Claim
1. A system for peer-based inter-process communication comprising:
- a plurality of peer processes, each process including a bus system for selectively communicating data between first and second processes of the plurality thereof;
a shared memory for selectively storing shared data accessible by each of the plurality of processes;
wherein each process includes notification means adapted for notifying at least one of the plurality of processes when a modification is made to content of the shared memory; and
wherein each process includes a locking mechanism for selectively locking the shared memory from access by at least one other process.
1 Assignment
0 Petitions
Accused Products
Abstract
This invention is directed to a system and method for using a template that allows a user to define a specific message format for use in a shared memory queue in the inter-process communication environment. A shared segment of the size needed to hold the supplied number of elements and a queue header are created. The system then unmaps the queue from the user'"'"'s address space. The queue contents are reset to initialize the state. The supplied element in the queue is Pushed. The element for the queue First-In/First-Out (FIFO) is Popped. An element from the queue may be returned, without affecting queue status. The element content in the queue is then updated. The queue is subsequently locked for exclusive access. The lock may be released, enabling changes to the queue. The system also provides the element count in the queue and the logical name of the inter-process communication queue. The shared memory based header maintained by each inter-process communication queue allows all the clients of the queue to access queue information from a single source.
46 Citations
36 Claims
-
1. A system for peer-based inter-process communication comprising:
-
a plurality of peer processes, each process including a bus system for selectively communicating data between first and second processes of the plurality thereof;
a shared memory for selectively storing shared data accessible by each of the plurality of processes;
wherein each process includes notification means adapted for notifying at least one of the plurality of processes when a modification is made to content of the shared memory; and
wherein each process includes a locking mechanism for selectively locking the shared memory from access by at least one other process. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for peer-based inter-process communication performed in a system comprising a plurality of peer processes, wherein the method comprises the steps of:
-
selectively communicating data between a first and a second process of the plurality of peer processes;
selectively storing shared data in a shared memory accessible by each of the plurality of processes;
notifying at least one of the plurality of processes when a modification is made to content of the shared memory; and
selectively locking the shared memory from access by at least one other process. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer readable medium of instructions for peer-based inter-process communication comprising:
-
instructions for selectively communicating data between a first and a second process of the plurality of peer processes;
instructions for selectively storing shared data in a shared memory accessible by each of the plurality of processes;
instructions for notifying at least one of the plurality of processes when a modification is made to content of the shared memory; and
instructions for selectively locking the shared memory from access by at least one other process. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A computer implemented method for peer-based inter-process communication performed in a system comprising a plurality of peer processes, wherein the method comprises the steps of:
-
selectively communicating data between a first and a second process of the plurality of peer processes;
selectively storing shared data in a shared memory accessible by each of the plurality of processes;
notifying at least one of the plurality of processes when a modification is made to content of the shared memory; and
selectively locking the shared memory from access by at least one other process. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36)
-
Specification