Application Isolation Layer for Resource Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Incompatible software applications and versions often cannot be executed or installed together on a single computer system due to conflicting use of native resources, leading to compatibility and sociability issues, especially in multi-user environments where multiple users access shared resources.

Innovation Solution

The solution involves virtualizing user and application access to native resources such as the file system, registry database, and system objects, allowing multiple applications to use the same resources without modification, by creating isolated views of these resources within an application and user isolation layer, enabling simultaneous execution of incompatible applications and versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple incompatible application programs are executed on the same computer system using native resources, then application compatibility and sociability improve, but resource conflicts and system stability deteriorate

Engineering Contradiction:
Improveapplication compatibilityVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the system into multiple isolation scopes (application isolation scope and user isolation scope) that divide native resources into separate namespaces. Each scope maintains independent resource views, preventing conflicts between incompatible applications while allowing simultaneous execution. This segmentation enables multiple applications with different resource requirements to coexist without interfering with each other's native resource access.

Inventive Principle:
Principle #1Segmentation

2Speed

If application programs access native resources directly without isolation, then resource access speed improves, but resource conflict and compatibility issues worsen

Engineering Contradiction:
Improveresource access speedVSAvoidapplication compatibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary layer (isolation scope mechanism) between application programs and native resources. This intermediary intercepts resource access requests, determines the appropriate isolation scope, and redirects requests to the correct resource instance. The intermediary enables compatible resource access by translating application requests into scope-aware operations, allowing multiple applications to access native resources simultaneously without direct conflicts.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If isolation layers are introduced to separate application resource access, then application compatibility improves, but system complexity worsens

Engineering Contradiction:
Improveapplication compatibilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal isolation scope mechanism that serves multiple functions simultaneously: it provides application isolation, user isolation, resource virtualization, and conflict resolution through a single integrated framework. The same isolation infrastructure handles both application-level and user-level resource separation, reducing overall system complexity compared to implementing separate isolation mechanisms for each level.

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

Data Source

PatentUS8132176B2Method for accessing, by application programs, resources residing inside an application isolation scope
Publication Date: 2012.03.06 CITRIX SYSTEMS INC
  • US8132176B2 patent drawing
  • US8132176B2 patent drawing
  • US8132176B2 patent drawing

AI summary

In a method for accessing, by application programs, resources provided by an operating system, a process receives a request for a resource and an identifier associated with the resource. It is determined that the requested resource resides inside an application isolation environment. The request for the resource and the identifier associated with the resource is redirected to the application isolation environment. The request for the resource is responded to using an instance of the resource residing inside the application isolation environment.