Compatibility Shims for Legacy Application Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy applications that rely on rich functionality provided by client computing devices may become inoperable in a minimal execution environment, as they do not natively provide the necessary system services.

Innovation Solution

A computing device determines if an application is directly executable and, if not, retrieves or executes a specified or default application to provide the required functionality, allowing legacy applications to run within isolated containers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a minimal execution environment is used on client devices, then device complexity and administration burden are reduced, but legacy applications become inoperable

Engineering Contradiction:
Improveexecution environment complexityVSAvoidlegacy application operability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent introduces a compatibility shim as an intermediary layer between legacy applications and the minimal execution environment. The shim intercepts system service calls from legacy applications and redirects them to web-based implementations, enabling legacy applications to function without requiring the full traditional client environment.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The solution segments the execution environment into distinct layers: the minimal client environment, the compatibility shim layer, and the web-based system services. This segmentation allows each layer to have optimized functionality while working together to support legacy applications.

Inventive Principle:
Principle #1Segmentation

2Reliability

If rich functionality is provided by the client device, then legacy applications can execute directly, but device resource consumption and complexity increase

Engineering Contradiction:
Improvelegacy application execution capabilityVSAvoiddevice resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts system services from the client device and relocates them to web-based implementations accessible through the network. The compatibility shim on the client device only handles the minimal functionality of intercepting and redirecting service calls, while the actual service logic runs remotely on servers.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8903705B2Application compatibility shims for minimal client computers
Publication Date: 2014.12.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8903705B2 patent drawing
  • US8903705B2 patent drawing
  • US8903705B2 patent drawing

AI summary

This document describes techniques for allowing a computing device that provides a minimal execution environment to execute legacy applications that rely on rich functionality that the computing device does not natively provide. For instance, a device may initially receive a request to execute an application and may determine whether the application is directly executable. In response to determining that the application is not directly executable, the computing device may determine whether the application specifies another application to provide the functionality. If the application specifies another application to provide this functionality, then the computing device retrieves the specified application and executes the specified application on the client computing device. If the application does not specify such an application, then the computing device may execute a default application for providing the functionality. The specified or default application then executes the application that is not directly executable on the minimal-execution-environment computing device.