Directory Scavenging for Flash Drive Storage Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large directories in file systems consume excessive storage space due to inefficient management, as removed files or content objects do not reclaim storage space, leading to wasted resources and increased wear on flash drives.
Innovation Solution
A testing operation is performed on file-system blocks to identify empty blocks, followed by a hole-punching operation that removes and frees these blocks, reducing the storage footprint of directory files and allowing for more efficient use of storage resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If directory files store all historical entries including removed content objects, then the directory maintains a complete history of all objects, but the storage space is wasted as removed entries continue to consume space
Solution Approach 1:
The patent changes the state of directory blocks from occupied to free by modifying the block allocation status. When a directory block is determined to contain only removed entries, its allocation status is changed, effectively removing it from the directory file and freeing the storage space while maintaining the logical directory structure.
Solution Approach 2:
The patent discards directory blocks that contain only removed content object entries and recovers the storage space for reuse. The hole-punching operation removes these obsolete blocks from the directory file, allowing the storage system to reallocate the freed space for new directory entries or other data.
2Productivity
If directory files are not optimized after removing content objects, then the file system operations remain simple and fast, but storage space is inefficiently utilized and flash drives experience increased wear
Solution Approach 1:
The patent performs preliminary scanning and identification of empty directory blocks before committing space reclamation. By proactively identifying blocks containing only removed entries and removing them in advance, the system optimizes storage utilization without requiring complex real-time operations during normal file system activities.
Solution Approach 2:
The directory scavenging process automatically identifies and removes obsolete directory blocks without requiring external intervention. The system monitors directory file changes and autonomously performs hole-punching operations on blocks that contain only removed entries, making the storage optimization self-managing.
3Stability of the object's composition
If all directory blocks are retained regardless of content, then the directory structure remains intact and simple to manage, but substantial storage space is wasted on blocks containing only removed entries
Solution Approach 1:
The patent extracts and removes directory blocks that contain only removed content object entries from the directory file. By separating and removing these obsolete blocks through hole-punching operations, the system reduces the directory file's storage footprint while preserving the integrity of blocks containing active entries.
Data Source
AI summary
A technique for managing storage of directories in a file system performs a testing operation on a file-system block of a directory file. The testing operation determines whether the file-system block contains any directory element that identifies a currently-present content object in the directory. In response to the testing operation determining that the file-system block contains no directory element that identifies any currently-present content object, the file system performs a hole-punching operation on the file-system block, removing the block from the directory file and freeing the block for other use.


