Application Compatibility Module for Legacy Binary Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy binary programming modules are not fully compatible with native operating systems, leading to issues with system calls, callbacks, and exceptions, and existing solutions like shims lack scalability and restrict resource access.

Innovation Solution

An application compatibility module translates system calls, callbacks, and exceptions between legacy binaries and a native operating system, enabling efficient interaction while maintaining access to native resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a shim program is used to translate communications between legacy applications and native binaries, then legacy binary compatibility is improved, but scalability deteriorates because shims are generated on an application-by-application basis

Engineering Contradiction:
Improvelegacy binary compatibilityVSAvoidscalability
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a universal shim library that can serve multiple legacy applications simultaneously, rather than generating separate shims for each application. This library contains pre-defined translation rules and compatibility layers that work across different applications, achieving both compatibility and scalability.

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

Solution Approach 2:

The patent pre-generates and stores translation rules, system call mappings, and compatibility configurations in a shim library before they are needed. This preliminary preparation allows the system to quickly retrieve and apply appropriate translations without generating shims on-demand for each application, improving both performance and scalability.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If a virtual machine is used to execute legacy applications on a legacy operating system, then legacy binary compatibility is improved, but resource accessibility deteriorates because the guest legacy operating system is isolated from the host native operating system

Engineering Contradiction:
Improvelegacy binary compatibilityVSAvoidresource accessibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a shim library as an intermediary layer between legacy applications and the native operating system. This mediator translates system calls, callbacks, and exceptions, enabling communication between the legacy application environment and native resources without requiring full virtualization isolation, thus maintaining both compatibility and resource accessibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the compatibility function into a separate, reusable shim library that can be selectively applied to different legacy applications. This segmentation allows the native operating system to remain accessible while providing targeted compatibility support only where needed, rather than isolating entire applications in virtual machines.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If legacy binaries are executed directly on a native operating system, then resource accessibility is improved, but compatibility deteriorates because the native operating system cannot understand legacy system calls, callbacks, and exceptions

Engineering Contradiction:
Improveresource accessibilityVSAvoidcompatibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent inserts a shim library as an intermediary between legacy binaries and the native operating system. This intermediary translates legacy system calls into native equivalents, converts callbacks and exceptions between different formats, and manages the interface between the two incompatible environments, enabling direct execution while maintaining compatibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7930705B2Environment for executing legacy applications on a native operating system
Publication Date: 2011.04.19 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7930705B2 patent drawing
  • US7930705B2 patent drawing
  • US7930705B2 patent drawing

AI summary

An application compatibility module is disclosed that provides compatibility between legacy binary system modules (“legacy binaries”) and a native operating system. The application compatibility module therefore allows legacy applications to execute within the native operating system, while still using their corresponding legacy binaries. The application compatibility module may provide compatibility between legacy binaries and the native operating system by translating communications between the legacy binaries and the native operating system.