Patent ID: 8117396

Claim:
A method for managing a uniform buffer cache, comprising: providing multiple buffer queues in the uniform buffer cache, each buffer queue having a corresponding level of queuing priority in the buffer cache, wherein data blocks are movable among the multiple queues, wherein each data block stores data having a specific data type; promoting a buffered data block to a level of higher queuing priority based on a combination of: a number of accesses to the data block and the specific data type stored in the data block, including promoting a data block storing user data in a different way than a data block storing system data; the promoting including increasing an access count of the data block up to a threshold, based on access to the data block, prior to promoting the buffered data block, wherein the threshold comprises a value representing a plurality of data accesses, and wherein a threshold for data blocks storing user data is different from a threshold for data blocks storing system data; and aging a buffered data block based at least in part on a combination of a number of accesses to the data block and the specific data type stored in the data block, including aging a data block storing user data in a different way than a data block storing system data, wherein an amount of the increase in the access count is different for different levels of queuing priority of the data block, where different queuing priority levels are promoted or aged at different rates.