METHOD AND SYSTEM FOR ENSURING RELIABILITY OF CACHE DATA AND METADATA SUBSEQUENT TO A REBOOT
First Claim
1. A method performed on a computing device that includes at least one processor and memory, the method comprising:
- tracking, by the computing device, writes of data items to a mass storage device;
writing, by the computing device in response to the tracking, the data items to a cache device;
bringing the cache device offline subsequent to the data items being written to the cache device;
further tracking, by the computing device, writes of additional data items to the mass storage device while the cache device is offline;
bringing the cache device back online subsequent to the additional data items being written to the mass storage device; and
updating, by the computing device subsequent to the bringing the cache device back online, the cache device with the tracked additional data items.
2 Assignments
0 Petitions
Accused Products
Abstract
To ensure that the contents of a non-volatile memory device cache may be relied upon as accurately reflecting data stored on disk storage, it may be determined whether the cache contents and/or disk contents are modified during a power transition, causing cache contents to no longer accurately reflect data stored in disk storage. The cache device may be removable from the computer, and unexpected removal of the cache device may cause cache contents to no longer accurately reflect data stored in disk storage. Cache metadata may be managed during normal operations and across power transitions, ensuring that cache metadata may be efficiently accessed and reliably saved and restored across power transitions. A state of a log used by a file system may be determined prior to and subsequent to reboot of an operating system in order to determine whether data stored on a cache device may be reliably used.
-
Citations
20 Claims
-
1. A method performed on a computing device that includes at least one processor and memory, the method comprising:
-
tracking, by the computing device, writes of data items to a mass storage device; writing, by the computing device in response to the tracking, the data items to a cache device; bringing the cache device offline subsequent to the data items being written to the cache device; further tracking, by the computing device, writes of additional data items to the mass storage device while the cache device is offline; bringing the cache device back online subsequent to the additional data items being written to the mass storage device; and updating, by the computing device subsequent to the bringing the cache device back online, the cache device with the tracked additional data items. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a computing device that includes at least one processor and memory; a write recorder configured to track writes of data items by the computing device to a mass storage device; the computing device configured to write, in response to the tracked writes, the data items to a cache device; the computing device further configured to bring the cache device offline subsequent to the data items being written to the cache device; the write recorder configured to further track writes of additional data items to the mass storage device while the cache device is offline; the computing device further configured to bring the cache device back online subsequent to the additional data items being written to the mass storage device; and a cache manager configured to update, subsequent to the cache device being brought back online, the cache device with the tracked additional data items. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. At least one computer storage medium comprising:
memory that comprises instructions that, based on execution by at least one processor of a computing device, configure the computing device to perform actions comprising; tracking, by the computing device, writes of data items to a mass storage device; writing, by the computing device in response to the tracking, the data items to a cache device; bringing the cache device offline subsequent to the data items being written to the cache device; further tracking, by the computing device, writes of additional data items to the mass storage device while the cache device is offline; bringing the cache device back online subsequent to the additional data items being written to the mass storage device; and updating, by the computing device subsequent to the bringing the cache device back online, the cache device with the tracked additional data items. - View Dependent Claims (16, 17, 18, 19, 20)
Specification