Flash Memory Foreground Reclaim Delaying Erasure
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing flash memory reclaim methods, particularly foreground reclaim, are time-sensitive and aware by applications, while background reclaim is unaware and less time-sensitive, leading to inefficiencies in managing memory space and operation timing.
Innovation Solution
Implementing a method where the foreground reclaim block is selected and searched for valid data, with data copying to a spare block, and delayed erasure until the next reclaim, allowing for efficient file operations and unawareness of time consumption by applications, while background reclaim handles erasure.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If foreground reclaim is performed immediately during file operations, then memory space is reclaimed promptly, but application execution time increases
Solution Approach 1:
The patent performs the data copying action in advance during the foreground reclaim, transferring valid data from the reclaim block to a spare block before the application needs the space back. This preliminary data migration enables the subsequent erasure to happen without blocking application operations, thus maintaining memory reclamation efficiency while reducing application execution time impact.
Solution Approach 2:
The patent dynamically adjusts the reclaim process by separating the data copying phase (foreground, time-sensitive) from the erasure phase (background, time-insensitive). The system transitions between foreground and background operations based on application needs, making the reclaim process adaptive and flexible to balance memory efficiency with application performance.
2Productivity
If erasure is performed immediately after data copying, then memory blocks are quickly available for reuse, but application performance degrades due to time consumption
Solution Approach 1:
The patent performs data copying as a preliminary action before erasure, ensuring that all valid data is safely transferred to spare blocks before the original reclaim block is erased. This preliminary data migration guarantees memory block availability for reuse while preventing performance degradation by completing the time-sensitive copying operation before the time-consuming erasure begins.
Solution Approach 2:
The patent maintains continuity of useful action by overlapping the erasure operation with subsequent background reclaim activities. While the erasure is occurring, the system continues to perform other useful work such as background reclaim on other blocks, thus keeping memory blocks available for reuse without idle time, while application performance remains unaffected.
3Reliability
If foreground reclaim handles all operations, then time-sensitive requirements are met, but system complexity increases
Solution Approach 1:
The patent segments the reclaim management into two distinct components: foreground reclaim handling time-sensitive operations (data copying) and background reclaim handling non-time-sensitive operations (erasure). This segmentation reduces system complexity by clearly defining the responsibilities of each component, while maintaining reliability for time-sensitive operations through dedicated foreground handling.
Solution Approach 2:
The patent creates a universal reclaim management system where the background reclaim process can handle both erasure operations and serve as a fallback for time-insensitive data migration. The spare blocks serve multiple purposes: receiving data from foreground reclaim and serving as available memory for applications, reducing overall system complexity through multi-functional components.
Data Source
AI summary
Machine-readable media, methods, apparatus and system for flash memory reclaim are described. In some embodiment, a system may comprise a flash memory having a plurality of flash memory blocks, and a managing logic to manage a file operation on the flash memory. The managing logic may, during a foreground reclaim of the flash memory which is triggered by the file operation, select a foreground reclaim block from the plurality of flash memory blocks; search the foreground reclaim block for valid data; and copy the valid data from the foreground reclaim block to a flash memory block of the plurality of flash memory blocks, if the valid data is found. The managing logic may further erase the foreground reclaim block during a next reclaim of the flash memory.


