System and method for handling memory allocation failures through reserve allocation of event data
AssigneeScientific-Atlanta, Inc.
InventorsEric Allen, Altan Stalker, Paul Porter, Mark Murray, David Decker
Life of this patent
Estimating the term…
Abstract
Disclosed are systems and methods for reserve allocation of event data. A request event is received. The request event is associated with memory storing request event data. Memory for response event data is allocated from a first pool. The response event data is associated with a response, and the response is associated with the request. Upon failure of the allocation of memory for the response event data, memory is obtained for out-of-memory response event data. The out-of-memory response event data is associated with the response event. The request event is completed using the response event.
Claims18
A method comprising the steps of:
- receiving a request event from a first component, wherein the request event is received via a mechanism other than a function call from the first component, the request event associated with a request event parameter buffer, wherein the request event comprises at least one event associated with a video-on-demand service, the at least one event comprising at least one of new session request data and stream play request data associated with providing the video-on-demand service;
- receiving a response event from a second component, wherein the response event is received via a mechanism other than a function call from the second component, the response event associated with the received request event;
- allocating a response event parameter buffer from a first pool, wherein the response event parameter buffer is associated with the response;
- obtaining, upon failure of the allocation of the response event parameter buffer an out-of-memory indication buffer used to indicate that no memory was allocated for the response event;
- associating the out-of-memory indication buffer with the response event;
- and
- completing, upon obtaining the out-of-memory indication buffer and associating the out-of-memory indication buffer with the response event, the request event using the response event and the associated out-of memory buffer to indicate no memory was allocated for the response event, wherein completing the request event comprises sending the response event and the associated out-of-memory buffer to the first component to complete the request event, wherein the request event parameter buffer associated with the response is re-used when sending the response event to the first component.
A computer readable medium storing a computer program, the computer program comprising:
- requester logic comprising:
- logic configured to allocate memory for request event data associated with a request event, wherein the request event comprises at least one event associated with a video-on-demand service, wherein the request event data comprises new session request data associated with providing the video-on-demand service, wherein the new session request data comprises a session id data and asset name data, and wherein a type associated with the session id data and the asset name data is encoded by a position within the new session request data;
- logic configured to send the request event with the memory storing request event data related to the request event to a first component via a mechanism other than a function call to the first component;
- and
- responder logic comprising:
- logic configured to receive the request event, with the memory storing request event data related to the request event, sent from the first component via a mechanism other than a function call from the first component;
- logic configured to allocate memory for response event data from a first pool, wherein the response event data is associated with a response, where the response event is associated with the request event;
- logic configured to obtain, upon failure of the allocation of memory for the response event data, memory for out-of-memory response event data used to indicate that no memory was allocated for the response event;
- logic configured to associate the out-of-memory response event data with the response and to send, upon obtaining the memory for the out-of-memory response event data and associating the out-of-memory response event data with the response, the response event and the out-of-memory response event data completing the request to indicate no memory was allocated for the response event, wherein the memory storing the request event data is re-used when sending the response event completing the request.
A device comprising:
- a processor configured to execute instructions from a memory, the instructions comprising:
- logic configured to receive an asynchronous response to a request, the response associated with response event data, the request associated with a request event parameter buffer wherein the request comprises a request event comprising at least one event associated with a video-on-demand service, the at least one event comprising at least one of new session request data and stream play request data associated with providing the video-on-demand service;
- logic configured to allocate a parameter buffer for the response event data from a first pool;
- logic configured to obtain, responsive to a failure of the allocation, an out-of memory indication buffer;
- logic configured to associate the out-of-memory indication buffer with the response event data;
- and
- logic configured to complete, upon obtaining the out-of-memory indication buffer and associating the out-of-memory indication buffer with the response event data, the request using the out-of-memory indication buffer, wherein completing the request comprises sending the response event data and the associated out-of-memory indication buffer to complete the request, wherein the request event parameter buffer associated with the request is re-used when sending the response event data.
Dependencies are inferred from the claim text.