Buffer management and system coordination method
AssigneeQuantum Corporation
InventorsClifford M. Gold, Hang D. Nguyen, George Li, Minnie Uppuluri, Hoa Luong, Steve Paul, Bryan Mee, Trinh Bui
Life of this patent
Estimating the term…
Loading patent…
AssigneeQuantum Corporation
InventorsClifford M. Gold, Hang D. Nguyen, George Li, Minnie Uppuluri, Hoa Luong, Steve Paul, Bryan Mee, Trinh Bui
Estimating the term…
A method of coordinating access to a data buffer including a plurality of data blocks, using a buffer list with a plurality of entries corresponding to the data blocks. Each buffer list entry includes: (i) a status code for indicating the status of data in the corresponding data block, and (ii) a partial address common to both the next buffer list entry and a data block corresponding to said next buffer list entry. A status code is selected from a cyclical set of sequential status codes having a period of N, the status codes sequentially, and alternately, representing the most recent history of a data block, including: (i) full status, indicating data in the data block has been retrieved from the storage device or is to be stored to the storage device, or (ii) empty status, indicating data transferred out of the data block to a host or to the storage device. A store flag maintains a status code representing empty status, and a retrieve flag maintains a status code representing full status. When storing data into the data buffer, locating a desired buffer list entry list with an empty status code by traversing the buffer list, calculating the address of each entry using the partial address in the previous entry, until the desired entry is found. The address of the data block corresponding to the found entry is calculated and data is stored in the data block when the status code of the entry matches the store flag status code. The found entry status code is advanced once, and if the entry is last in the buffer list the store flag status code is advanced twice. Similarly, when retrieving data from the data buffer, locating a desired entry in the buffer list with a full status code by traversing the buffer list, calculating the address of each entry using the partial address in the previous entry, until the desired entry is found. The address of the data block corresponding to the found entry is calculated and data is retrieved from the data block when the status code of the entry matches the retrieve flag status code. The found entry status code is advanced once, and if the entry is last in the buffer list the retrieve flag status code is advanced twice.
A controller for coordinating access to a data buffer including a plurality of data blocks for storage of data retrieved from, or to be stored into a storage device, each data block having a size and an address, the controller comprising:
A controller for providing access to a data buffer, the data buffer including a plurality of data blocks for storing data retrieved from or to be stored in a storage device, each data block having a size and an address, the controller comprising:
A controller for coordinating transfer of data into and out of a data buffer, the data buffer including a plurality of data blocks each for storage of data retrieved from, or to be stored into, a storage device, the controller comprising:
In a data buffer system comprising a data buffer for storing data retrieved from or to be stored in a storage device, the data buffer including a plurality of data blocks for storing data, each data block having a size and an address, a method of providing access to, and coordinating transfer of data into and out of, the data blocks comprising the steps of:
In a data buffer system comprising at least one data buffer for storing data retrieved from or to be stored in a storage device, the data buffer including a plurality of data blocks each for the storage of data, a method of coordinating storing of data into and retrieving of data from the data buffer, comprising the steps of:
In a computer system comprising at least one host connected to at least one disk drive through a data buffer system, the data buffer system comprising at least one data buffer for storing data retrieved from or to be stored in the disk drive, the data buffer including a plurality of data blocks each for the storage of data, a method of coordinating storing of data into and retrieving of data from the data buffer by the host and by the disk drive, the method comprising the steps of:
In a data buffer system comprising a data buffer for storing data retrieved from or to be stored in a storage device, the data buffer including a plurality of data blocks for storing data, each data block organized in data sectors having a size, an offset within the data block, and an address, a method of providing access to the data blocks comprising the steps of:
In a data buffer system comprising a data buffer for storing data retrieved from or to be stored in a storage device, the data buffer including a plurality of data blocks for storing data, each data block having a size and an address, a method of providing access to the data blocks comprising the steps of:
Dependencies are inferred from the claim text.