Back to results
US 7,627,713 B2Granted
Method and apparatus to maintain data integrity in disk cache memory during and after periods of cache inaccessibility
AssigneeIntel Corporation
InventorsSanjeev N. Trika, Michael K. Eschmann, Jeanna N. Matthews, Vasudevan Srinivasan
Life of this patent
Estimating the term…
Abstract
A volatile or nonvolatile cache memory can cache mass storage device read data and write data. The cache memory may become inaccessible, and I/O operations may go directly to the mass storage device, bypassing the cache memory. A log of write operations may be maintained to update the cache memory when it becomes available.
Claims9
A method comprising:
- receiving a cache inaccessibility notification signifying future inaccessibility of a disk cache during a time in which a hard disk will still be accessible;
- flushing the disk cache to the hard disk;
- receiving a write request from an operating system during the time in which the disk cache is inaccessible and the hard disk is accessible;
- performing a write operation to the hard disk, creating stale data in the disk cache;
- maintaining a log of the write operation to keep track of the stale data;
- and
- invalidating the stale data in the disk cache when the disk cache becomes accessible;
- wherein determining cache inaccessibility comprises receiving a cache inaccessibility notification signifying a change in system state, and wherein the cache inaccessibility notification signifies that a system is entering hibernation.
5 more elements
A method comprising:
- receiving a cache inaccessibility notification signifying future inaccessibility of a disk cache during a time in which a hard disk will still be accessible;
- flushing the disk cache to the hard disk;
- receiving a write request from an operating system during the time in which the disk cache is inaccessible and the hard disk is accessible;
- performing a write operation to the hard disk, creating stale data in the disk cache;
- maintaining a log of the write operation to keep track of the stale data;
- and
- invalidating the stale data in the disk cache when the disk cache becomes accessible;
- wherein maintaining a log of the write operation comprises maintaining a log on the hard disk.
5 more elements
A computer-readable medium having instructions stored thereon that when executed result in the computer performing:
- detecting a future cache inaccessibility situation, flushing a disk cache to a hard disk, receiving an operating system write request after the disk cache is inaccessible, performing a write operation to the hard disk creating stale data in the disk cache, maintaining a log of the write operation to keep track of the stale data, and invalidating the stale data in the disk cache when the disk cache becomes accessible, wherein maintaining a log of the write operation comprises maintaining a log on the hard disk.
A system comprising:
- a processor;
- a radio frequency circuit coupled to the processor;
- a hard disk coupled to the processor;
- a hard disk cache coupled to the processor;
- and
- a storage driver component to maintain a log of writes made to the hard disk during periods of hard disk cache inaccessibility and to later interpret the log and invalidate stale data in the hard disk cache created by the writes, wherein the log of writes is maintained on the hard disk.
3 more elements
A storage driver computer program product comprising:
- a computer-readable medium having stored thereon computer-executable instructions that when executed cause a computer to maintain a log of writes made to a hard disk during periods of hard disk cache inaccessibility and to later interpret the log and invalidate stale data in the hard disk cache created by the writes;
- wherein the computer-executable instructions further cause the computer to write an overflow indication to the log, and wherein the computer-executable instructions further cause the computer to invalidate the entire hard disk cache if an overflow indication is found in the log.
Dependencies are inferred from the claim text.