Dynamic Virtual Software Sub-layer Insertion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software update processes require shutting down software applications and processes, causing significant interruptions and burdensome downtime, especially in large computer systems.

Innovation Solution

The implementation of dynamic insertion and removal of virtual software sub-layers allows for updating software components without shutting down applications or processes, by redirecting access requests through virtualization, enabling selective application and visibility of updates on a process-by-process basis within an active virtual layer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software updates are applied by shutting down applications and processes, then the update can be applied effectively, but significant interruption and downtime occur

Engineering Contradiction:
Improvesoftware update effectivenessVSAvoiddowntime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The software update mechanism is segmented into separate components: a virtual layer containing update information and a base layer containing the running application. This allows the update to be applied as a separate virtual sub-layer without shutting down the base application, resolving the contradiction between effective update application and downtime.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The virtual layer is nested within the base application layer, with the virtual layer containing virtual sub-layers that can be dynamically inserted and removed. This nested structure enables updates to be applied without interrupting the base application, eliminating downtime while maintaining update effectiveness.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Reliability

If coordinated shutdown of software applications is performed across a computer system, then updates can be applied, but administrative burden and intrusion increase

Engineering Contradiction:
Improveupdate applicationVSAvoidadministrative burden
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

A virtual layer acts as an intermediary between the base application and the update mechanism. This intermediary layer handles the update application process independently, allowing administrators to apply updates without coordinating shutdowns across the system, thereby reducing administrative burden while maintaining update reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The virtual layer provides dynamic insertion and removal of virtual sub-layers without requiring coordinated shutdowns. This dynamic mechanism allows updates to be applied in real-time, eliminating the need for complex coordination procedures and reducing administrative burden while ensuring reliable update application.

Inventive Principle:
Principle #15Dynamics

3Productivity

If virtual sub-layers are dynamically inserted and removed, then updates can be applied without shutting down applications, but system complexity increases

Engineering Contradiction:
Improveupdate application speedVSAvoidvirtual layer structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The virtual layer structure serves multiple functions: it provides update isolation, enables dynamic insertion/removal, maintains application compatibility, and facilitates selective visibility. This multi-functionality justifies the added complexity by delivering high-speed updates without shutdowns while managing system complexity through a unified framework.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9081644B2Dynamic insertion and removal of virtual software sub-layers
Publication Date: 2015.07.14 CA TECH INC
  • US9081644B2 patent drawing
  • US9081644B2 patent drawing
  • US9081644B2 patent drawing

AI summary

The disclosure is directed to dynamic insertion and removal of virtual software sub-layers. In one example, a virtual layer associated with a software application is virtually installed and activated in a computing device. A virtual sub-layer associated with a component of the software application is dynamically inserted in the virtual layer. The virtual layer remains active during the dynamic insertion of the virtual sub-layer. In certain embodiments, a process is executed from the virtual layer, a determination is made as to whether the process launched before or after the insertion of the virtual sub-layer, and the inserted virtual sub-layer is selectively made visible or invisible to the process based on the determination.