Code Tracing Processor Selection for Legacy Hardware Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software applications written in older programming languages may not be compatible with newly developed computing hardware, requiring significant resource investment to rewrite code for compatibility, especially for large software systems.

Innovation Solution

Systems and methods that trace requests benefiting from execution on non-compatible hardware, record these requests, and execute corresponding code on that hardware, reducing the need for extensive rewriting by reusing previously identified executable code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software is rewritten in a new programming language to be compatible with new hardware, then hardware compatibility is improved, but development time and resource investment increase significantly

Engineering Contradiction:
Improvehardware compatibilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces a compiler as an intermediary tool that translates old programming language code into new programming language code. This mediator enables compatibility between legacy software and new hardware without requiring manual rewriting, thus resolving the contradiction by maintaining adaptability while minimizing time investment through automated translation

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary analysis of the legacy codebase to identify portions that would benefit from execution on new hardware. By pre-processing and categorizing code before full translation or execution, the system prepares the software architecture in advance, reducing the overall time required for compatibility adaptation

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If legacy code is translated to a new programming language using automated tools, then development time is reduced, but translation accuracy and code quality may deteriorate

Engineering Contradiction:
Improvetranslation timeVSAvoidcode translation accuracy
Core Design Contradiction:
Loss of timeVSManufacturing precision

Solution Approach 1:

The patent divides the legacy codebase into distinct segments or modules that can be translated and processed independently. This segmentation allows for more precise control over translation accuracy in each module, enabling quality verification and correction without reprocessing the entire codebase, thus maintaining precision while benefiting from automated translation speed

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements feedback mechanisms where translated code is analyzed and verified against expected behavior and performance criteria. This feedback loop allows for automatic correction of translation errors and ensures that code quality standards are maintained, resolving the contradiction between speed and precision

Inventive Principle:
Principle #23Feedback

3Ease of manufacture

If existing software is executed on new hardware without modification, then resource investment is minimized, but performance optimization opportunities are lost

Engineering Contradiction:
Improveresource investmentVSAvoidexecution performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent creates a dynamic execution environment where the system can selectively execute different portions of code on different hardware platforms. By dynamically determining which code segments to run on new hardware versus old hardware, the system optimizes performance for specific tasks while minimizing overall resource investment, resolving the contradiction between ease of deployment and performance

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9081560B2Code tracing processor selection
Publication Date: 2015.07.14 FIDELITY INFORMATION SERVICES LLC
  • US9081560B2 patent drawing
  • US9081560B2 patent drawing
  • US9081560B2 patent drawing

AI summary

A system for tracing operations during application execution and executing the traced operations on a second processing unit. The tracing involves identifying attempts to execute software that performs particular functions that would benefit from execution on a particular piece of non-compatible hardware and, rather than executing the code, recording the requests and the data inputs to each of the requests. At a point during execution of the software system such as, for example, when either a memory threshold has been exceeded for recording the requested code and inputs, or results are needed for the requested code, the corresponding code executable on the non-compatible hardware is identified and executed. Thereafter, the results from the execution on the non-compatible hardware are received and processing continues.