Patent ID: 8533368

Claim:
A buffering device that buffers data to be subjected to any one of a first process that necessitates a sequential guarantee and a second process that does not necessitate the sequential guarantee, the buffering device comprising: a storage unit that includes a plurality of queues, each of which stores one target data to be processed and a state of the target data that is capable of changing in a sequence of waiting issuance of previous status, waiting issuance status, waiting response status and completing issuance status, and is further capable of storing a plurality of waiting flags of the target data, each of the plurality of waiting flags corresponding to one of the plurality of queues, wherein, the waiting issuance of previous status indicates issuing of a preceding target data is awaited, the waiting issuance status indicates issuing of the target data itself is awaited, the waiting response status indicates a receipt response to the target data is awaited, and the completing issuance status indicates issuing of the target data is completed; a control unit that sets a waiting flag in a queue storing a specific target data, the waiting flag of the specific target data corresponding to a queue storing preceding target data that is to be processed before processing the specific target data; and a reading unit that reads the target data from the storage unit one by one based on the waiting flag set by the control unit, the control unit configured to set the waiting flag of a specific target data that is to be subjected to the first process such that a waiting flag corresponding to a queue storing the preceding target data in any status is set and the specific target data is allowed to be read when the state of the preceding target data becomes the completing issuance status in which issuing of the preceding target data is completed, while to set the waiting flag of a specific target data that is to be subjected to the second process such that a waiting flag corresponding to a queue storing the preceding target data in the state of the waiting issuance is set and the specific target data is allowed to be read when the state of the preceding target data becomes the waiting response status in which a receipt response to the preceding target data is awaited.