High speed interprocess communication
DCFirst Claim
1. A method for high speed interprocess communications comprising the steps of:
- detecting a previously created shared region of RAM;
if a shared region of RAM is not detected, creating and configuring a shared region of RAM for storing accumulated data;
attaching first and second processes to a message buffer in the shared region of random access memory (RAM) exclusive of operating system kernel space, each said process having a message list that is a message queue;
accumulating message data from said first process in a location in said message buffer;
said first process adding to said message list of said second process a memory offset corresponding to said location in said message buffer; and
,manipulating in said second process said accumulated data at said location corresponding to said offset,whereby said accumulated message data is transferred from said first process to said second process with minimal data transfer overhead.
6 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A method for high speed interprocess communications comprises four steps. Initially, first and second processes can be attached to a message buffer in a shared region of user memory. In addition, each process can have a corresponding message queue. In a preferred embodiment, the attaching step comprises the step of attaching first and second processes to a message buffer in a shared region of user memory exclusive of operating system kernel space. Second, message data from the first process can be accumulated in a location in the message buffer. Third, a memory offset corresponding to the location in the message buffer can be placed in the message queue of the second process. Finally, the accumulated data at the location corresponding to the offset can be used in the second process. Consequently, the accumulated message data is transferred from the first process to the second process with minimal data transfer overhead.
75 Citations
14 Claims
-
1. A method for high speed interprocess communications comprising the steps of:
-
detecting a previously created shared region of RAM; if a shared region of RAM is not detected, creating and configuring a shared region of RAM for storing accumulated data; attaching first and second processes to a message buffer in the shared region of random access memory (RAM) exclusive of operating system kernel space, each said process having a message list that is a message queue; accumulating message data from said first process in a location in said message buffer; said first process adding to said message list of said second process a memory offset corresponding to said location in said message buffer; and
,manipulating in said second process said accumulated data at said location corresponding to said offset, whereby said accumulated message data is transferred from said first process to said second process with minimal data transfer overhead. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for configuring high speed interprocess communications between first and second processes comprising the steps of:
-
creating and configuring a message buffer in a shared region of RAM exclusive of operating system kernel space and shared between said first and second processes; accumulating message data from said first process in a location in said message buffer; creating a message list in said shared region of RAM, whereby said message list is a message queue and can store memory offsets of message data stored in said message buffer; said first process adding to said message list corresponding to said second process a memory offset corresponding to said location in said message buffer; and
,manipulating in said second process said accumulated message data stored in said message buffer at a location corresponding to said offset, whereby said accumulated message data is transferred from said first process to said second process with minimal data transfer overhead. - View Dependent Claims (7, 8, 9)
-
-
10. A computer apparatus programmed with a set of instructions stored in a fixed medium for high speed interprocess communications, said programmed computer apparatus comprising:
-
means for detecting a previously created shared region of RAM; means for creating and configuring a shared region in RAM for storing accumulated data if a previously created shared region of RAM is not detected by said detecting means; means for attaching first and second processes to a message buffer in the shared region of random access memory (RAM) exclusive of operating system kernel space, each said process having a message list that is a message queue; means for accumulating message data from said first process in a location in said message buffer; means for said first process to add to said message list of said second process a memory offset corresponding to said location in said message buffer; and
,means for manipulating in said second process said accumulated data at said location corresponding to said offset. - View Dependent Claims (11, 12, 13, 14)
-
Specification