Patent ID: 8090883

Claim:
A system for the management of I/O store buffers, the system comprising: a data transmission component, wherein the data transmission component comprises: a processor; and a control unit, the control unit in communication with the processor, the system configured to perform a method comprising: identifying a plurality of logical state machines, the plurality of logical state machines configured to receive data input from the data transmission component; associating each of a plurality of data store buffers to a respective logical state machine from the plurality of logical state machines, the data store buffers configured to be utilized individually with a corresponding logical state machine or utilized in pairs comprising a logical state machine data store buffer pair and a mate state machine data store buffer pair; and determining if an I/O operation requires a single data store buffer or a data store buffer pairing; in response to determining that a single data store buffer is required, performing: determining if stored data has been read out of a buffer that is associated with the state machine in the instance that the state machine is determined to be inactive; and determining if stored data has been read out of a buffer that is associated with the state machine in the instance that the mate state machine has claimed the buffer and the mate state machine is determined to be active; and in response to determining that a data store buffer pair is required, performing: determining if stored data has been read out of the buffer that is associated with a state machine and a buffer that is associated with a mate state machine that is associated with the state machine in the instance that the state machine is determined to be inactive, wherein the mate state machine is identified as being active; and configuring a secondary command queue position to claim a data buffer pair that is associated with a state machine and the mate state machine that is associated with the state machine as soon as a mate command queue position releases the buffers that are associated with the state machine and the mate state machine.