Layering Write Cache for Preserving User Modifications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing information handling systems face issues where user modifications to application layers are lost or invalidated during updates or patch installations, leading to inconsistent states and loss of user-specific changes.

Innovation Solution

Implementing a layering write cache that stores modified files and registry entries separately from the original layer, allowing user changes to be preserved by redirecting file operations to the cache and maintaining a read-only state for the original layer, thus decoupling disk-block dependencies and ensuring changes are saved as complete files and registry entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If application layers are shared between multiple users with read-write access, then users can modify and customize the layer, but user modifications are lost or invalidated during updates or patch installations

Engineering Contradiction:
ImproveUser modification capabilityVSAvoidPreservation of user changes
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent divides the application layer into two separate components: a read-only base layer containing the original application files and a read-write user layer for storing user modifications. This segmentation allows users to modify the user layer without affecting the base layer, and updates to the base layer do not invalidate user changes stored in the separate user layer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a copy of the application layer structure with a read-write user layer that mirrors the base layer. User modifications are stored in this copy rather than directly in the base layer, allowing the base layer to be updated independently while preserving user changes in the user layer copy.

Inventive Principle:
Principle #26Copying

2Ease of operation

If the application layer is mounted in read-write mode allowing user modifications, then users can customize the layer, but the layer becomes inconsistent when multiple users modify it simultaneously or when updates are applied

Engineering Contradiction:
ImproveUser customization capabilityVSAvoidLayer consistency
Core Design Contradiction:
Ease of operationVSStability of the object's composition

Solution Approach 1:

The patent segments the layer into a read-only base layer and a read-write user layer. The base layer maintains consistency by being read-only, while the user layer captures individual user modifications. This segmentation prevents simultaneous modification conflicts and maintains layer composition stability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The user layer acts as an intermediary between user modifications and the base layer. It mediates changes by storing user modifications separately, allowing the base layer to remain consistent and stable while still enabling user customization through the intermediary user layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If updates or patches are installed on the application layer, then the application is updated, but all user modifications are lost or invalidated

Engineering Contradiction:
ImproveApplication update capabilityVSAvoidUser modification loss
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The patent segments the application layer into a read-only base layer for updates and a read-write user layer for preserving modifications. When updates are applied to the base layer, the user layer remains intact with all user modifications preserved, eliminating information loss during updates.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses a copy mechanism where the user layer is a separate copy of the base layer structure. User modifications are stored in this copy, allowing the base layer to be updated independently without losing any user information stored in the user layer copy.

Inventive Principle:
Principle #26Copying

4Reliability

If a write cache is implemented to preserve user changes, then user modifications are saved, but the system complexity increases with additional mounting and redirection operations

Engineering Contradiction:
ImprovePreservation of user changesVSAvoidSystem structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the layer management into simple read-only and read-write mount operations. Instead of complex write caching mechanisms, it uses straightforward separate mounting of the base layer and user layer, reducing system complexity while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses a simple copy structure where the user layer is a separate copy of the base layer. This simple copying approach avoids complex write cache redirection operations while still achieving reliable preservation of user changes through the separate read-write user layer.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9852077B2Preserving user changes to a shared layered resource
Publication Date: 2017.12.26 DELL PROD LP
  • US9852077B2 patent drawing
  • US9852077B2 patent drawing
  • US9852077B2 patent drawing

AI summary

User changes may be preserved across updates to a layer. When a layering client mounts a layer, a corresponding layering write cache is mounted. Changes to layered resources, such as files, registry entries, and registry values, are made only to the layering write cache. A request to create a file in the layer is directed to the layering write cache such that the new file is created in the layering write cache. A request to open a layered resource, is directed to the layered resource if the layered resource is in the layering write cache. A request to write to a layered resource is directed to the layering write cache if the layered resource is in the layering write cache. If the layered resource is not in the layering write cache, the layered resource is copied to the layering write cache before redirecting the write request.