Methods and systems of cache memory management and snapshot operations
First Claim
1. A cache memory management system in a data storage system, comprising:
- a cache memory including a cache directory including a hash table, hash table elements, and cache line descriptors and a plurality of cache lines, wherein a first cache line descriptor has a one-to-one association with a first cache line; and
a cache manager using a hashing function to convert a request for data from an application to index to a first hash table pointer in the hash table, wherein the first hash table pointer points to a linked list of hash table elements in the cache directory, wherein a first hash table element of the linked list of hash table elements points to the first cache line descriptor in the cache directory.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention relates to a cache memory management system suitable for use with snapshot applications. The system includes a cache directory including a hash table, hash table elements, cache line descriptors, and cache line functional pointers, and a cache manager running a hashing function that converts a request for data from an application to an index to a first hash table pointer in the hash table. The first hash table pointer in turn points to a first hash table element in a linked list of hash table elements where one of the hash table elements of the linked list of hash table elements points to a first cache line descriptor in the cache directory and a cache memory including a plurality of cache lines, wherein the first cache line descriptor has a one-to-one association with a first cache line. The present invention also provides for a method converting a request for data to an input to a hashing function, addressing a hash table based on a first index output from the hashing function, searching the hash table elements pointed to by the first index for the requested data, determining the requested data is not in cache memory, and allocating a first hash table element and a first cache line descriptor that associates with a first cache line in the cache memory.
-
Citations
46 Claims
-
1. A cache memory management system in a data storage system, comprising:
-
a cache memory including a cache directory including a hash table, hash table elements, and cache line descriptors and a plurality of cache lines, wherein a first cache line descriptor has a one-to-one association with a first cache line; and
a cache manager using a hashing function to convert a request for data from an application to index to a first hash table pointer in the hash table, wherein the first hash table pointer points to a linked list of hash table elements in the cache directory, wherein a first hash table element of the linked list of hash table elements points to the first cache line descriptor in the cache directory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A cache memory management system in a data storage system, comprising:
-
a cache memory including a cache directory including search elements and cache line descriptors and a plurality of cache lines, wherein a first cache line descriptor has a one-to-one association with a first cache line; and
a cache manager receiving a request for data from an application and using a search algorithm to locate a first search element that points to the first cache line descriptor. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A method in a cache memory management system, comprising:
-
converting a request for data to an input to a hashing function;
addressing a hash table based on a first index output from the hashing function;
searching the hash table elements pointed to by the first index for the requested data;
determining the requested data is not in cache memory; and
allocating a first hash table element and a first cache line descriptor that associates with a first cache line in cache memory. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38)
-
-
39. A method in a cache memory management system, comprising:
-
receiving a request for data from a first application;
determining the requested data is not in cache memory; and
allocating a first search element and a first cache line descriptor that associate with a first cache line in cache memory. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46)
-
Specification