Writing volatile scattered memory metadata to flash device
First Claim
1. A method, comprising:
- requesting an update on a control data in at least one flash block in a storage memory;
replicating, from the storage memory to a cache memory, the control data to be updated;
moving a clean cache link list in the cache memory to a dirty cache link list in the cache memory so that the dirty cache link list is changed to reflect the update on the control data, wherein the dirty cache link list will first contain the control data without the update prior to moving the clean cache link list to the dirty cache link list, and wherein the dirty cache link list is changed into an updated control data after the control data is updated and the clean cache link list is moved to the dirty cache link list;
moving the dirty cache link list to a for-flush link list in the cache memory so that the for-flush link list will contain the updated control data; and
asking for a free flash page in the storage memory;
and writing the updated control data from the for-flush link list to the free flash page in the storage memory.
2 Assignments
0 Petitions
Accused Products
Abstract
In an embodiment of the invention, a method comprises: requesting an update on a control data in at least one flash block in a storage memory; replicating, from the storage memory to a cache memory, the control data to be updated; moving a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update on the control data; and moving the dirty cache link list to a for-flush link list and writing an updated control data from the for-flush link list to a free flash page in the storage memory. In another embodiment of the invention, an apparatus comprises: a control data flushing system configured to: request an update on a control data in at least one flash block in a storage memory; replicate, from the storage memory to a cache memory, the control data to be updated; move a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update on the control data; and move the dirty cache link list to a for-flush link list and write an updated control data from the for-flush link list to a free flash page in the storage memory. In yet another embodiment of the invention, an article of manufacture, comprises a non-transient computer-readable medium having stored thereon instructions operable to permit an apparatus to: request an update on a control data in at least one flash block in a storage memory; replicate, from the storage memory to a cache memory, the control data to be updated; move a clean cache link list to a dirty cache link list so that the dirty cache link list is changed to reflect the update on the control data; and move the dirty cache link list to a for-flush link list and write an updated control data from the for-flush link list to a free flash page in the storage memory.
-
Citations
20 Claims
-
1. A method, comprising:
-
requesting an update on a control data in at least one flash block in a storage memory; replicating, from the storage memory to a cache memory, the control data to be updated; moving a clean cache link list in the cache memory to a dirty cache link list in the cache memory so that the dirty cache link list is changed to reflect the update on the control data, wherein the dirty cache link list will first contain the control data without the update prior to moving the clean cache link list to the dirty cache link list, and wherein the dirty cache link list is changed into an updated control data after the control data is updated and the clean cache link list is moved to the dirty cache link list; moving the dirty cache link list to a for-flush link list in the cache memory so that the for-flush link list will contain the updated control data; and asking for a free flash page in the storage memory; and writing the updated control data from the for-flush link list to the free flash page in the storage memory. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus, comprising:
-
a control data flushing system configured to; request an update on a control data in at least one flash block in a storage memory; replicate, from the storage memory to a cache memory, the control data to be updated; move a clean cache link list in the cache memory to a dirty cache link list in the cache memory so that the dirty cache link list is changed to reflect the update on the control data, wherein the dirty cache link list will first contain the control data without the update prior to moving the clean cache link list to the dirty cache link list, and wherein the dirty cache link list is changed into an updated control data after the control data is updated and the clean cache link list is moved to the dirty cache link list; move the dirty cache link list to a for-flush link list in the cache memory so that the for-flush link list will contain the updated control data; ask for a free flash page in the storage memory; and write the updated control data from the for-flush link list to the free flash page in the storage memory. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An article of manufacture, comprising:
-
a non-transitory computer-readable medium having stored thereon instructions operable to permit an apparatus to perform a method comprising; requesting an update on a control data in at least one flash block in a storage memory; replicating, from the storage memory to a cache memory, the control data to be updated; moving a clean cache link list in the cache memory to a dirty cache link list in the cache memory so that the dirty cache link list is changed to reflect the update on the control data, wherein the dirty cache link list will first contain the control data without the update prior to moving the clean cache link list to the dirty cache link list, and wherein the dirty cache link list is changed into an updated control data after the control data is updated and the clean cache link list is moved to the dirty cache link list; moving the dirty cache link list to a for-flush link list in the cache memory so that the for-flush link list will contain the updated control data; asking for a free flash page in the storage memory; and writing the updated control data from the for-flush link list to the free flash page in the storage memory. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification