Storage Space Allocation for Cache Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern storage devices face thrashing scenarios due to insufficient memory space, leading to inefficient resource usage, increased wear, and reduced device lifetime, as multiple applications compete for freed-up storage space, causing frequent cache data deletion and resource wastage.
Innovation Solution
A method for managing storage space allocation by prioritizing applications based on historical user activity data and cache data usage, reserving space to maintain a minimum free space threshold, and strategically deleting cache data to optimize memory usage, ensuring efficient data operations and reducing thrashing conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If cache data is retained in storage device to reduce latency, then user experience is improved, but storage space is consumed leaving insufficient space for new data downloads
Solution Approach 1:
The system dynamically changes the allocation parameters of storage space between cache data and new data based on current storage conditions. When storage space becomes insufficient, the system adjusts the cache allocation parameter to free up space for new downloads, resolving the contradiction between retaining cache for low latency and making space available for new data.
Solution Approach 2:
The storage space allocation is made dynamic rather than static. The system continuously monitors storage space availability and automatically adjusts cache data retention levels in response to changing conditions, allowing the system to optimize between cache performance and new data acceptance based on real-time storage capacity.
2Quantity of substance
If cache data deletion procedures are performed to free up storage space, then storage space is available for new downloads, but multiple applications compete for freed space causing thrashing scenarios
Solution Approach 1:
The system introduces an intermediary allocation mechanism that mediates between multiple applications competing for storage space. Instead of allowing direct competition that causes thrashing, the intermediary system manages cache data deletion and space allocation in a controlled manner, preventing the competitive thrashing scenario while still freeing up necessary storage space.
Solution Approach 2:
The system implements feedback control by monitoring storage space usage and automatically initiating cache data deletion procedures when space becomes insufficient. This feedback mechanism prevents thrashing by proactively managing space allocation based on current conditions, rather than reacting to competitive conflicts between applications.
3Speed
If storage space is continuously allocated to cache data, then data access speed is improved, but storage device wear increases and device lifetime is reduced
Solution Approach 1:
The system implements periodic cache data deletion and space reallocation cycles instead of continuously allocating space to cache. By periodically adjusting cache size based on storage conditions, the system reduces continuous write operations that cause wear, while still maintaining cache functionality for improved data access speed during normal operation.
Data Source
AI summary
This application sets forth techniques for managing the allocation of storage space within a storage device that is communicably coupled to a computing device. Requests are received from a plurality of applications executing on the computing device, in which each request specifies a respective amount of storage space to be reserved within the storage device. Detection is performed for the availability of a minimum amount of free space that corresponds to an optimal amount of space for executing at least one application of the plurality of applications. A respective priority ranking for each application is identified based on historical data gathered for the applications. Based on the priority rankings, a subset of requests from the plurality of requests is established. For each request of the subset, at least a portion of the respective amount of space specified by the request is reserved while maintaining the minimum amount of free space.


