Patent ID: 8176291

Claim:
A system comprising: a buffer memory including a plurality of buffers; an allocation memory including a plurality of allocation data elements associated with the plurality of buffers; an allocation clear register coupled with the allocation memory; a reclaim memory including a plurality of reclaim data elements each associated with an allocation data element and corresponding buffer; a reclaim clear register coupled with the reclaim memory; an allocation register configured to receive one or more allocation data elements from the allocation memory; and a buffer manager configured to: identify, in the allocation register, at least one allocation data element indicative of an available buffer in the buffer memory, set the at least one identified allocation data element to indicate the available buffer has been allocated, receive a clear request to clear an allocated buffer, determine whether an allocation data element associated with the allocated buffer is stored in the allocation register, if the allocation data element is stored in the allocation register, set the allocation data element in the allocation register and associated reclaim data element in the reclaim memory to indicate the allocated buffer is available, and if the allocation data element is not stored in the allocation register, read the allocation data element associated with the allocated buffer from the allocation memory, write the allocation data element to the allocation clear register and the associated reclaim data element to the reclaim clear register, and erase the written allocation data element and reclaim data element from the allocation clear register and reclaim clear register, respectively.