摘要 |
Disclosed is a cache with a data block tracking journal, and an invalidation data area that tracks invalidated data blocks associated with the data blocks tracked in the journal. The invalidation data area is on a separate cache region from the journal. The method of invalidating a cache block starts by determining a journal block tracking a memory address associated with a received write operation. Next, is determined a mapped journal block based on the journal block and on an invalidation record. Then, whether any write operations are outstanding is determined. If there are, the outstanding write operations are aggregated and a single write operation is performed, based on the aggregated write operations. The journal and the invalidation data area may track the metadata of the data blocks. The journal uses journal blocks to store the metadata. The invalidation data area tracks the metadata associated with the invalid data blocks using invalidation records and mapped journal blocks. |