Control of Memory Access Cycles for Thermal Stability and Performance
US-2024370175-A1 · Nov 7, 2024 · US
US2020034340A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2020034340-A1 |
| Application number | US-201816483608-A |
| Country | US |
| Kind code | A1 |
| Filing date | Feb 6, 2018 |
| Priority date | Feb 6, 2017 |
| Publication date | Jan 30, 2020 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A flash file system and a data management method thereof are provided, the system including: a creation module, configured to divide a flash memory into a file system region and a flash buffer region; a marking module configured to mark written data as dirty data in a memory buffer when the data are written and an amount of the written data is less than or equal to a preset marking threshold; a synchronization module, configured to merge the dirty data in the memory buffer and write the same into the flash buffer region when data synchronization is required, and notify a backfilling module when the flash buffer region is full; and the backfilling module, configured to read the dirty data in the flash buffer region, write the dirty data into the file system region, and erase the flash buffer region.
Opening claim text (preview).
1 . A flash file system, comprising: a creation module, a marking module, a synchronization module, and a backfilling module, wherein the creation module is configured to divide a flash memory into a file system region and a flash buffer region when a file system is created; the marking module is configured to mark written data as dirty data in a memory buffer when the data are written and an amount of the written data is less than or equal to a preset marking threshold, wherein the marking threshold being used to indicate an amount of data that are written into the memory buffer and need to be marked according to data granularity; the synchronization module is configured to write, when data synchronization is required, the dirty data into the flash buffer region after merging all the dirty data in the memory buffer or the dirty data of a file to be synchronized in the memory buffer, and notify the backfilling module when the flash buffer region is full; and the backfilling module is configured to read the dirty data in the flash buffer region when a notification is received from the synchronization module, write the dirty data into the file system region, and erase the flash buffer region. 2 . The flash file system according to claim 1 , wherein the flash buffer region comprises a first flash buffer region and a second flash buffer region, wherein the synchronization module is configured to: write the dirty data into the first flash buffer region after merging all the dirty data in the memory buffer or the dirty data of the file to be synchronized in the memory buffer when data synchronization is required; send a first notification to the backfilling module when the first flash buffer region is full, and write the dirty data into the second flash buffer region after merging all the dirty data in the memory buffer or the dirty data of the file to be synchronized in the memory buffer when data synchronization is required; and send a second notification to the backfilling module when the second flash buffer region is full, and write the dirty data into the first flash buffer region after merging all the dirty data in the memory buffer or the dirty data of the file to be synchronized in the memory buffer when data synchronization is required; and the backfilling module is configured to: read the dirty data in the first flash buffer region when the first notification is received from the synchronization module, write the dirty data into the file system region, and erase the first flash buffer region; and read the dirty data in the second flash buffer region when the second notification is received from the synchronization module, write the dirty data into the file system region, and erase the second flash buffer region. 3 . The flash file system according to claim 1 , wherein the marking module is configured to: encapsulate, when written data is present and an amount of the written data is less than or equal to the marking threshold, an inode number, and a page number of a data segment, a page offset, a length of the data segment and data of the data segment of a file corresponding to the written data as records, and add the records to a preset dirty data list; and increase a reference count of a memory buffer page corresponding to the written data by one. 4 . The flash file system according to claim 3 , wherein the synchronization module is configured to: search for all records of the file corresponding to the written data according to the inode number of the file, request a new memory page, sequentially copy contents of a plurality of records to the new memory page, and sequentially write the contents in the new memory page into the flash buffer region. 5 . The flash file system according to claim 1 , further comprising: a recovery module configured to detect whether dirty data is present in the flash buffer region when the flash file system is restarted; and read all the dirty data in the flash buffer region if dirty data is present in the flash buffer region, and update content of the memory buffer according to each piece of the dirty data. 6 . A data management method of a flash file system, comprising: dividing a flash memory into a file system region and a flash buffer region when a file system is created; marking written data as dirty data in a memory buffer when the data are written and an amount of the written data is less than or equal to a preset marking threshold, wherein the marking threshold being used to indicate an amount of data that are written into the memory buffer and need to be marked according to data granularity; writing, when data synchronization is required, the dirty data into the flash buffer region after merging all the dirty data or the dirty data of a file to be synchronized in the memory buffer; and reading the dirty data in the flash buffer region when the flash buffer region is full, writing the dirty data into the file system region, and erasing the flash buffer region. 7 . The data management method according to claim 6 , wherein: the flash buffer region comprises a first flash buffer region and a second flash buffer region, wherein the dirty data is written into the first flash buffer region after merging all the dirty data in the memory buffer or the dirty data of the file to be synchronized in the memory buffer when data synchronization is required; the second flash buffer region is configured, when the first flash buffer region is full, as a current buffer used for writing data when data synchronization is required, while the dirty data in the first flash buffer region is read and written into the file system region, and the first flash buffer region is erased; and the first flash buffer region is configured, when the second flash buffer region is full, as the current buffer used for writing data when data synchronization is required, while the dirty data in the second flash buffer region is read and written into the file system region, and the second flash buffer region is erased. 8 . The data management method according to claim 6 , wherein: marking the written data as dirty data in the memory buffer comprises: encapsulating an inode number, and a page number of a data segment, a page offset, a length of the data segment and data of the data segment of a file corresponding to the written data as records, and adding the records to a preset dirty data list; and increasing a reference count of a memory buffer page corresponding to the written data by one. 9 . The data management method according to claim 8 , wherein: writing the dirty data in the dirty data list into the flash buffer region after merging the dirty data comprises: searching for all records of the file corresponding to the written data according to the inode number of the file, requesting a new memory page, sequentially copying contents of a plurality of records to the new memory page, and sequentially writing the contents in the new memory page into the flash buffer region. 10 . The data management method according to claim 6 , further comprising: detecting whether dirty data is present in the flash buffer region when the flash file system is restarted; and reading all the dirty data in the flash buffer region if dirty data is present in the flash buffer region, and updating content of the memory buffer according to each piece of the dirty data. 11 . A computer readable storage medium storing computer executable instructions for implementing, when executed by a processor, the method according to claim 6 .
Delete operations (erasing in storage systems G06F3/0652) · CPC title
Data buffering arrangements · CPC title
Management of files · CPC title
in relation to life time, e.g. increasing Mean Time Between Failures [MTBF] · CPC title
Techniques for file synchronisation in file systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.