Mechanism for managing an object cache
First Claim
1. A computer implemented method for managing an object cache, comprising:
- receiving a request for an object resident in said object cache;
determining whether said object is currently within a particular portion of said object cache; and
in response to a determination that said object is currently within said particular portion of said object cache, maintaining said object within said particular portion, wherein said object has a current position relative to other objects in said object cache, and wherein maintaining said object within said particular portion comprises;
maintaining said object at said current position such that said object is not relocated.
2 Assignments
0 Petitions
Accused Products
Abstract
An improved mechanism for managing an object cache is disclosed. An object cache manager receives a request for an object resident in an object cache. A determination is made as to whether the requested object is currently within a particular portion of the object cache. If the requested object is within this particular portion, then the object cache manager keeps the requested object within this portion of the cache by maintaining the requested object at its current position relative to other objects in the object cache. By removing the overhead of repositioning objects within a particular portion of the object cache, the efficiency of object cache management is significantly improved.
-
Citations
48 Claims
-
1. A computer implemented method for managing an object cache, comprising:
-
receiving a request for an object resident in said object cache;
determining whether said object is currently within a particular portion of said object cache; and
in response to a determination that said object is currently within said particular portion of said object cache, maintaining said object within said particular portion, wherein said object has a current position relative to other objects in said object cache, and wherein maintaining said object within said particular portion comprises;
maintaining said object at said current position such that said object is not relocated. - View Dependent Claims (2, 3, 4, 5, 6, 7, 43, 44)
updating said flag to indicate that said object is in use.
-
-
4. The method of claim 2, wherein said object has a rank associated therewith, and wherein determining whether said object is currently within said particular portion of said object cache comprises:
determining whether said rank falls within a particular range.
-
5. The method of claim 4, wherein said particular range is determined based at least upon a predetermined factor, and a summit rank, where said summit rank is equal to a highest rank of any object in said object cache.
-
6. The method of claim 4, further comprising:
in response to a determination that said object is not currently within said particular portion of said object cache, relocating said object to place it within said particular portion.
-
7. The method of claim 6, wherein said particular portion has a particular position for accommodating a most recently used object, and wherein relocating said object comprises:
-
moving said object into said particular position;
incrementing a summit rank to derive a new summit rank, wherein said summit rank is equal to a highest rank of any object currently in said object cache; and
assigning said new summit rank to said object.
-
-
43. The method of claim 3, further comprising:
accessing said object without removing said object from said object cache.
-
44. The method of claim 43, further comprising:
-
receiving a request to free said object; and
in response to said request to free said object, resetting said flag, thereby indicating that said object is available again in said object cache without needing to re-insert said object into said object cache.
-
-
8. A computer implemented method for managing an object cache, comprising:
-
receiving a request to free an object that was formerly in use;
determining whether said object is currently within a particular portion of said object cache; and
in response to a determination that said object is currently within said particular portion of said object cache, maintaining said object within said particular portion, wherein said object has a current position relative to other objects in said object cache, and wherein maintaining said object within said particular portion comprises;
maintaining said object at said current position such that said object is not relocated. - View Dependent Claims (9, 10, 11, 12, 13, 14)
updating said flag to indicate that said object is not in use.
-
-
11. The method of claim 9, wherein said object has a rank associated therewith, and wherein determining whether said object is currently within said particular portion of said object cache comprises:
determining whether said rank falls within a particular range.
-
12. The method of claim 11, wherein said particular range is determined based at least upon a predetermined factor, and a summit rank, where said summit rank is equal to a highest rank of any object in said object cache.
-
13. The method of claim 11, further comprising:
in response to a determination that said object is not currently within said particular portion of said object cache, relocating said object to place it within said particular portion.
-
14. The method of claim 13, wherein said particular portion has a particular position for accommodating a most recently used object, and wherein relocating said object comprises:
-
moving said object into said particular position;
incrementing a summit rank to derive a new summit rank, wherein said summit rank is equal to a highest rank of any object currently in said object cache; and
assigning said new summit rank to said object.
-
-
15. A computer readable medium having stored thereon instructions which when executed by one or more processors, cause the one or more processors to manage an object cache, said computer readable medium comprising:
-
instructions for causing one or more processors to receive a request for an object resident in said object cache;
instructions for causing one or more processors to determine whether said object is currently within a particular portion of said object cache; and
instructions for causing one or more processors to maintain, in response to a determination that said object is currently within said particular portion of said object cache, said object within said particular portion, wherein said object has a current position relative to other objects in said object cache, and wherein instructions for causing one or more processors to maintain said object within said particular portion comprises;
instructions for causing one or more processors to maintain said object at said current position such that said object is not relocated. - View Dependent Claims (16, 17, 18, 19, 20, 21, 45, 46)
instructions for causing one or more processors to update said flag to indicate that said object is in use.
-
-
18. The computer readable medium of claim 16, wherein said object has a rank associated therewith, and wherein instructions for causing one or more processors to determine whether said object is currently within said particular portion of said object cache comprises:
instructions for causing one or more processors to determine whether said rank falls within a particular range.
-
19. The computer readable medium of claim 18, wherein said particular range is determined based at least upon a predetermined factor, and a summit rank, where said summit rank is equal to a highest rank of any object in said object cache.
-
20. The computer readable medium of claim 18, further comprising:
instructions for causing one or more processors to relocate, in response to a determination that said object is not currently within said particular portion of said object cache, said object to place it within said particular portion.
-
21. The computer readable medium of claim 20, wherein said particular portion has a particular position for accommodating a most recently used object, and wherein instructions for causing one or more processors to relocate said object comprises:
-
instructions for causing one or more processors to move said object into said particular position;
instructions for causing one or more processors to increment a summit rank to derive a new summit rank, wherein said summit rank is equal to a highest rank of any object currently in said object cache; and
instructions for causing one or more processors to assign said new summit rank to said object.
-
-
45. The computer readable medium of claim 19, wherein said computer readable medium further comprises:
instructions for causing one or more processors to access said object without removing said object from said object cache.
-
46. The computer readable medium of claim 45, wherein said computer readable medium further comprises:
-
instructions for causing one or more processors to receive a request to free said object; and
instructions for causing one or more processors to reset said flag in response to said request to free said object, thereby indicating that said object is available again in said object cache without needing to re-insert said object into said object cache.
-
-
22. A computer readable medium for managing an object cache, comprising:
-
instructions for causing one or more processors to receive a request to free an object that was formerly in use;
instructions for causing one or more processors to determine whether said object is currently within a particular portion of said object cache; and
instructions for causing one or more processors to maintain, in response to a determination that said object is currently within said particular portion of said object cache, said object within said particular portion, wherein said object has a current position relative to other objects in said object cache, and wherein instructions for causing one or more processors to maintain said object within said particular portion comprises;
instructions for causing one or more processors to maintain said object at said current position such that said object is not relocated. - View Dependent Claims (23, 24, 25, 26, 27, 28)
instructions for causing one or more processors to update said flag to indicate that said object is not in use.
-
-
25. The computer readable medium of claim 23, wherein said object has a rank associated therewith, and wherein instructions for causing one or more processors to maintain to determine whether said object is currently within said particular portion of said object cache comprises:
instructions for causing one or more processors to maintain to determine whether said rank falls within a particular range.
-
26. The computer readable medium of claim 23, wherein said particular range is determined based at least upon a predetermined factor, and a summit rank, where said summit rank is equal to a highest rank of any object in said object cache.
-
27. The computer readable medium of claim 23, further comprising:
instructions for causing one or more processors to relocate, in response to a determination that said object is not currently within said particular portion of said object cache, said object to place it within said particular portion.
-
28. The computer readable medium of claim 27, wherein said particular portion has a particular position for accommodating a most recently used object, and wherein instructions for causing one or more processors to relocate said object comprises:
-
instructions for causing one or more processors to move said object into said particular position;
instructions for causing one or more processors to increment a summit rank to derive a new summit rank, wherein said summit rank is equal to a highest rank of any object currently in said object cache; and
instructions for causing one or more processors to assign said new summit rank to said object.
-
-
29. An apparatus for managing an object cache, comprising:
-
a mechanism for receiving a request for an object resident in said object cache;
a mechanism for determining whether said object is currently within a particular portion of said object cache; and
a mechanism for maintaining, in response to a determination that said object is currently within said particular portion of said object cache, said object within said particular portion, wherein said object has a current position relative to other objects in said object cache, and wherein mechanism for maintaining said object within said particular portion comprises;
a mechanism for maintaining said object at said current position such that said object is not relocated. - View Dependent Claims (30, 31, 32, 33, 34, 35, 47, 48)
a mechanism for updating said flag to indicate that said object is in use.
-
-
32. The apparatus of claim 30, wherein said object has a rank associated therewith, and wherein said mechanism for determining whether said object is currently within said particular portion of said object cache comprises:
a mechanism for determining whether said rank falls within a particular range.
-
33. The apparatus of claim 32, wherein said particular range is determined based at least upon a predetermined factor, and a summit rank, where said summit rank is equal to a highest rank of any object in said object cache.
-
34. The apparatus of claim 32, further comprising:
a mechanism for relocating, in response to a determination that said object is not currently within said particular portion of said object cache, said object to place it within said particular portion.
-
35. The apparatus of claim 34, wherein said particular portion has a particular position for accommodating a most recently used object, and wherein said mechanism for relocating said object comprises:
-
a mechanism for moving said object into said particular position;
a mechanism for incrementing a summit rank to derive a new summit rank, wherein said summit rank is equal to a highest rank of any object currently in said object cache; and
a mechanism for assigning said new summit rank to said object.
-
-
47. The apparatus of claim 31, further comprising:
a mechanism for accessing said object without removing said object from said object cache.
-
48. The apparatus of claim 47, further comprising:
-
a mechanism for receiving a request to free said object; and
a mechanism for resetting said flag in response to said request to free said object, thereby indicating that said object is available again in said object cache without needing to re-insert said object into said object cache.
-
-
36. An apparatus for managing an object cache, comprising:
-
a mechanism for receiving a request to free an object that was formerly in use;
a mechanism for determining whether said object is currently within a particular portion of said object cache; and
a mechanism for maintaining, in response to a determination that said object is currently within said particular portion of said object cache, said object within said particular portion, wherein said object has a current position relative to other objects in said object cache, and wherein said mechanism for maintaining said object within said particular portion comprises;
a mechanism for maintaining said object at said current position such that said object is not relocated. - View Dependent Claims (37, 38, 39, 40, 41, 42)
a mechanism for updating said flag to indicate that said object is not in use.
-
-
39. The apparatus of claim 37, wherein said object has a rank associated therewith, and wherein said mechanism for determining whether said object is currently within said particular portion of said object cache comprises:
a mechanism for determining whether said rank falls within a particular range.
-
40. The apparatus of claim 39, wherein said particular range is determined based at least upon a predetermined factor, and a summit rank, where said summit rank is equal to a highest rank of any object in said object cache.
-
41. The apparatus of claim 39, further comprising:
a mechanism for relocating, in response to a determination that said object is not currently within said particular portion of said object cache, said object to place it within said particular portion.
-
42. The apparatus of claim 41, wherein said particular portion has a particular position for accommodating a most recently used object, and wherein said mechanism for relocating said object comprises:
-
a mechanism for moving said object into said particular position;
a mechanism for incrementing a summit rank to derive a new summit rank, wherein said summit rank is equal to a highest rank of any object currently in said object cache; and
a mechanism for assigning said new summit rank to said object.
-
Specification