Patent US5577224A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5577224A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and system for caching data

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1994-12-13
•
Granted: 1996-11-19
•
Expires: 2014-12-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for caching data that improve the efficiency of a cache are provided. Generally, three types of data are stored in a cache constructed according to the principles of the present invention. These types of data include: (1) path tables, (2) directories, and (3) files. Path tables include data regarding all of the directories on a storage medium, directories include data regarding all of the subdirectories and files in each directory, and files include the actual file data. The preferred embodiment of the cache logically includes eight regions. These regions include (in order of preferred descending priority): (1) path table, (2) directory, (3) two-access, (4) zero-access or prefetch, (5) sequential-locked, (6) one-access, (7) discarded, and (8) invalid. The path table region includes sectors containing path table data, the directory region includes sectors containing directory data, the two-access region includes sectors containing file data that have been accessed twice, the prefetch region includes sectors containing file data that have been prefetched, the sequential-locked region includes sectors containing file data that were prefetched and have now been locked for access, the one-access region includes sectors containing file data that have been accessed once, the discarded region includes empty sectors that are available for reuse, and the invalid region includes a single dummy sector that is used as a placeholder. During operation, a cache manager manages the cache. The cache manager is responsible for manipulating the cache, such as by adding and removing sectors to and from the cache.

Inventors

  • 👤 Frederick J. DeWitt
  • 👤 Ronald O. Radko

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 08:18
CPC Classifications
G; G11; G11B; G11B27/00; G11B27/10; G11B27/19; G11B27/28; G11B27/32; G11B27/327; G11B27/329; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0866; G06F12/0862; G11B20/00; G11B20/10; G11B20/12; G11B20/1217; G11B2220/00; G11B2220/20; G11B2220/21; G11B2220/213; G11B2220/25; G11B2220/2537; G11B2220/2545

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 151 words
A method in a computer system for caching data from CD-ROM, comprising the computer-implemented steps of: receiving a sector to be cached; when the sector is a path table sector, caching the sector at the highest priority; when the sector is a directory sector, caching the sector at the second highest priority; when the sector is a file sector that has been accessed twice, caching the sector at the third highest priority; when the sector is a file sector that has been prefetched, caching the sector at the fourth highest priority; when the sector is a file sector that was prefetched and has been locked for access, caching the sector at the fifth highest priority; when the sector is a file sector that has been accessed once, caching the sector at the sixth highest priority; and when the sector is a discarded sector, caching the sector at the seventh highest priority.
Claim 2
Independent Claim 151 words
A method in a computer system for caching data from CD-ROM, comprising the computer-implemented steps of: receiving a sector to be cached; when the sector is a path table sector, caching the sector at the highest priority; when the sector is a directory sector, caching the sector at the second highest priority; when the sector is a file sector that has been accessed twice, caching the sector at the third highest priority; when the sector is a file sector that has been prefetched, caching the sector at the fourth highest priority; when the sector is a file sector that was prefetched and has been locked for access, caching the sector at the fifth highest priority; when the sector is a file sector that has been accessed once, caching the sector at the sixth highest priority; and when the sector is a discarded sector, caching the sector at the seventh highest priority.
Claim 3
Independent Claim 173 words
A method in a computer system for determining priority of data in a cache memory, the data being of a type that is path table data, directory data, or file data, comprising: receiving data to store in the cache memory; determining the type of the received data; when the type of the data is path table data, storing the data in the cache memory with a priority that is a high priority; when the type of the data is directory data, storing the data in the cache memory with a priority that is a medium priority; when the type of the data is file data, storing the data in the cache memory with a priority that is a low priority; and when receiving additional data to store in the cache memory, lowering the priority of the data currently in cache memory that has a priority that is less than or equal the priority of the new data wherein data in cache memory with a lowest priority is allocated for storing newly received data.
Claim 4
Independent Claim 173 words
A method in a computer system for determining priority of data in a cache memory, the data being of a type that is path table data, directory data, or file data, comprising: receiving data to store in the cache memory; determining the type of the received data; when the type of the data is path table data, storing the data in the cache memory with a priority that is a high priority; when the type of the data is directory data, storing the data in the cache memory with a priority that is a medium priority; when the type of the data is file data, storing the data in the cache memory with a priority that is a low priority; and when receiving additional data to store in the cache memory, lowering the priority of the data currently in cache memory that has a priority that is less than or equal the priority of the new data wherein data in cache memory with a lowest priority is allocated for storing newly received data.
Claim 5
Dependent Claim 86 words
The method of claim 2 wherein the file data further includes file data that has been accessed twice while in cache memory, file data that has been pre-fetched, and file data that has been accessed only once while in cache memory, and wherein when storing the file data in cache memory, file data that has been accessed twice receives a higher priority than file data that has been pre-fetched and pre-fetched file data receives a higher priority than file data that has been accessed only once.
Claim 6
Dependent Claim 168 words
A cache management system for determining priority of data in a cache memory, the data being of a type that is path table data, directory data, or file data, comprising: means for receiving data to store in the cache memory; means for determining the type of the received data; means for storing the data in the cache memory with a priority that is a high priority when the type of the data is path table data; means for storing the data in the cache memory with a priority that is a medium priority when the type of the data is directory data; and means for storing the data in the cache memory with a priority that is a low priority when the type of the data is file data; and means for lowering the priority of the data currently in cache memory that has a priority that is less than or equal the priority of the new data when receiving additional data to store in the cache memory.
Claim 7
Dependent Claim 168 words
A cache management system for determining priority of data in a cache memory, the data being of a type that is path table data, directory data, or file data, comprising: means for receiving data to store in the cache memory; means for determining the type of the received data; means for storing the data in the cache memory with a priority that is a high priority when the type of the data is path table data; means for storing the data in the cache memory with a priority that is a medium priority when the type of the data is directory data; and means for storing the data in the cache memory with a priority that is a low priority when the type of the data is file data; and means for lowering the priority of the data currently in cache memory that has a priority that is less than or equal the priority of the new data when receiving additional data to store in the cache memory.
Claim 8
Dependent Claim 181 words
In a computer-readable storage device containing instructions for causing a computer system to determine priority of data in a cache memory, the data being of a type that is path table data, directory data, or file data, the method comprising: receiving data to store in the cache memory; determining the type of the received data; when the type of the data is path table data, storing the data in the cache memory with a priority that is a high priority; when the type of the data is directory data, storing the data in the cache memory with a priority that is a medium priority; when the type of the data is file data, storing the data in the cache memory with a priority that is a low priority; and when receiving additional data to store in the cache memory, lowering the priority of the data currently in cache memory that has a priority that is less than or equal the priority of the new data wherein data in cache memory with a lowest priority is allocated for storing newly received data.
Claim 9
Dependent Claim 181 words
In a computer-readable storage device containing instructions for causing a computer system to determine priority of data in a cache memory, the data being of a type that is path table data, directory data, or file data, the method comprising: receiving data to store in the cache memory; determining the type of the received data; when the type of the data is path table data, storing the data in the cache memory with a priority that is a high priority; when the type of the data is directory data, storing the data in the cache memory with a priority that is a medium priority; when the type of the data is file data, storing the data in the cache memory with a priority that is a low priority; and when receiving additional data to store in the cache memory, lowering the priority of the data currently in cache memory that has a priority that is less than or equal the priority of the new data wherein data in cache memory with a lowest priority is allocated for storing newly received data.
Claim 10
Dependent Claim 88 words
The computer-readable storage device of claim 5 wherein the file data further includes file data that has been accessed twice while in cache memory, file data that has been pre-fetched, and file data that has been accessed only once while in cache memory, and whereto when storing the file data in cache memory, file data that has been accessed twice receives a higher priority than file data that has been pre-fetched and pre-fetched file data receives a higher priority than file data that has been accessed only once.

References Cited (Backward Citations)

US5029125A Cited
US5291442A Cited
US5392413A Cited
US5261072A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-11-19 2000-05-20 2000-11-19 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-11-19 2004-05-20 2004-11-19 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-11-19 2008-05-20 2008-11-19 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag