Data communication among processes of a network component
AssigneeCisco Technology, Inc.
InventorSrikrishna Kurapati
Life of this patent
Estimating the term…
Abstract
A method for communicating data among processes of a network component is disclosed. A process communication module receives a request from a first process of a network component. The request requests a message buffer operable to store data associated with the first process. A message buffer is allocated to the first process in response to the request, and the data is stored in the message buffer. The message buffer is inserted into a message queue corresponding to a second process of the network component. The second process is provided access to the message buffer to read the data.
Claims29
A method for communicating data among processes of a network component, comprising:
- receiving at a process communication module a request from a first process of a network component, the request requesting an allocation of a message buffer from a shared memory or a process heap memory, the message buffer operable to store data associated with the first process, the process heap memory dedicated to the first process and distinct from the shared memory;
- allocating a message buffer from the shared memory to the first process if the request is requesting the allocation of the message buffer from the shared memory;
- allocating the message buffer from the process heap memory to the first process if the request is requesting the allocation of the message buffer from the process heap memory;
- storing the data in the message buffer;
- inserting the allocated message buffer into a message queue corresponding to a second process of the network component;
- and
- providing the second process access to the message buffer to read the data.
A system for communicating data among processes of a network component, comprising:
- a message buffer operable to store data associated with a first process of a network component;
- and
- a process communication module operable to:
- receive a request from the first process, the request requesting an allocation of the message buffer from a shared memory or a process heap memory, the process heap memory dedicated to the first process and distinct from the shared memory;
- allocate the message buffer from the shared memory to the first process if the request is requesting the allocation of the message buffer from the shared memory;
- allocate the message buffer from the process heap memory to the first process if the request is requesting the allocation of the message buffer from the process heap memory;
- store the data in the message buffer;
- insert the allocated message buffer into a message queue corresponding to a second process of the network component;
- and
- provide the second process access to the message buffer to read the data.
Logic for communicating data among processes of a network component, the logic encoded in a medium and operable to:
- receive at a process communication module a request from a first process of a network component, the request requesting an allocation of a message buffer from a shared memory or a process heap memory, the message buffer operable to store data associated with the first process, the process heap memory dedicated to the first process and distinct from the shared memory;
- allocate a message buffer from the shared memory to the first process if the request is requesting the allocation of the message buffer from the shared memory;
- allocate the message buffer from the process heap memory to the first process if the request is requesting the allocation of the message buffer from the process heap memory;
- store the data in the message buffer;
- insert the allocated message buffer into a message queue corresponding to a second process of the network component;
- and
- provide the second process access to the message buffer to read the data.
A system for communicating data among processes of a network component, comprising:
- means for receiving at a process communication module a request from a first process of a network component, the request requesting an allocation of a message buffer from a shared memory or a process heap memory, the message buffer operable to store data associated with the first process, the process heap memory dedicated to the first process and distinct from the shared memory;
- means for allocating a message buffer from the shared memory to the first process if the request is requesting the allocation of the message buffer from the shared memory;
- means for allocating the message buffer from the process heap memory to the first process if the request is requesting the allocation of the message buffer from the process heap memory;
- means for storing the data in the message buffer;
- means for inserting the allocated message buffer into a message queue corresponding to a second process of the network component;
- and
- means for providing the second process access to the message buffer to read the data.
A method for communicating data among processes of a network component, comprising:
- receiving at a process communication module a request from a first process of a network component, the request requesting a message buffer operable to store data associated with the first process;
- allocating a message buffer to the first process in response to the request by:
- determining whether the first process comprises the second process;
- selecting the message buffer from a shared memory if the first process does not comprise the second process, the first process and the second process operable to access the shared memory;
- and
- selecting the message buffer from a process heap memory if the first process comprises the second process, the process heap memory dedicated to the first process and distinct from the shared memory, the message buffer comprising a header operable to point to a data block, the data block operable to store the data;
- storing the data in the message buffer;
- inserting the message buffer into a message queue corresponding to a second process of the network component by inserting a pointer to the message buffer in the message queue;
- and
- providing the second process access to the message buffer to read the data by providing a header of the message buffer to the second process, the header operable to point to the stored data.
Dependencies are inferred from the claim text.