Sandboxed Application Component Capture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional application capture systems are inefficient in capturing all necessary components of an application, often missing required files and including 'noise' in the package, which can lead to malfunction and incorrect behavior when deployed on endpoint devices, and require manual recapture for every new version, making them resource-intensive and prone to incomplete captures.

Innovation Solution

A sandboxed environment is used on endpoint devices to capture applications in their natural state, identifying and packaging all necessary components without requiring a staging machine or pre-installation snapshot, allowing seamless background capture and management of applications without user interruption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If conventional application capture systems use pre-installation and post-installation snapshots to identify application components, then the capture process can be automated, but the system misses necessary components that were already present before installation and includes noise from other changes

Engineering Contradiction:
Improveautomation of application captureVSAvoidaccuracy of component identification
Core Design Contradiction:
Extent of automationVSManufacturing precision

Solution Approach 1:

The patent introduces a staging machine as an intermediary environment with a controlled baseline state. Application components are captured by comparing the staging machine state before and after application installation, while excluding changes from pre-existing components. This mediator isolates the capture process from the complexity of the target endpoint environment, enabling automated capture with high precision by filtering out noise and missing components.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the application capture process into distinct phases: (1) establishing a baseline snapshot of the staging machine, (2) installing the application in the controlled staging environment, (3) capturing a post-installation snapshot, and (4) computing the delta while filtering out pre-existing components. This segmentation allows automated processing while maintaining precision by systematically identifying only the actual application components.

Inventive Principle:
Principle #1Segmentation

2Manufacturing precision

If application capture requires a dedicated staging machine with clean baseline state, then component identification accuracy improves, but resource requirements and system complexity increase

Engineering Contradiction:
Improvecomponent identification accuracyVSAvoidrequirement for dedicated staging machine
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent creates a virtual copy of the endpoint environment as a staging machine with an identical baseline state. Instead of requiring multiple physical machines, the system uses virtualization to replicate the endpoint's file system and registry state in a controlled staging environment. This copying approach maintains high component identification accuracy while reducing hardware complexity and resource requirements.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The staging machine serves multiple functions: it acts as both the baseline reference environment and the installation target, and also functions as the source for generating the application package. This multi-functionality eliminates the need for separate dedicated capture machines, reducing overall system complexity while maintaining capture accuracy.

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

3Manufacturing precision

If conventional capture systems record every file change between pre-installation and post-installation snapshots, then all potential components are captured, but noise from unrelated changes (OS updates, other application updates) is included in the package

Engineering Contradiction:
Improvecompleteness of component captureVSAvoidnoise in application package
Core Design Contradiction:
Manufacturing precisionVSObject-generated harmful factors

Solution Approach 1:

The patent implements a feedback mechanism where the system continuously monitors and compares file system changes during the capture process. By analyzing the delta between baseline and post-installation states, and cross-referencing with known application installation patterns and timing, the system can distinguish between actual application components and noise from unrelated changes. This feedback loop enables filtering out OS updates and other application changes while maintaining completeness of genuine application components.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by establishing a controlled baseline state in the staging machine before installation begins. This preliminary setup includes freezing the baseline file system state and identifying pre-existing components that should be excluded. By preparing this reference state in advance, the system can accurately distinguish application-specific changes from unrelated changes during the capture process, eliminating noise while maintaining completeness.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10810027B2Capturing components of an application using a sandboxed environment
Publication Date: 2020.10.20 OMNISSA LLC
  • US10810027B2 patent drawing
  • US10810027B2 patent drawing
  • US10810027B2 patent drawing

AI summary

A management agent operates transparently in the background on each endpoint computing device that needs to be managed. The agent sets up a sandboxed environment on the endpoint computing device on which it is operating in order to capture applications that have been installed on the endpoint device. The application capture is performed after the applications have been installed on the endpoint device and therefore does not require installing the application on any dedicated staging machine, nor any recording of the pre-installation state. The application capture process involves running the application from an isolated sandboxed environment on the computing device in order to identify all necessary components of the application by monitoring accesses by the application to components located outside of the sandbox. The identified components can then be packaged together and managed as individual application packages.