Storage Space Allocation for Cache Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvedata access latencyVSAvoidavailable storage space
Core Design Contradiction:
Loss of timeVSQuantity of substance

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.

Inventive Principle:
Principle #35Parameter changes

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.

Inventive Principle:
Principle #15Dynamics

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

Engineering Contradiction:
Improveavailable storage spaceVSAvoidsystem efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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.

Inventive Principle:
Principle #23Feedback

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

Engineering Contradiction:
Improvedata access speedVSAvoidstorage device lifetime
Core Design Contradiction:
SpeedVSDuration of action of stationary object

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.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10599353B2Techniques for managing storage space allocation within a storage device
Publication Date: 2020.03.24 APPLE INC
  • US10599353B2 patent drawing
  • US10599353B2 patent drawing
  • US10599353B2 patent drawing

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.