Runtime Environment Emulation via Class Loader Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Runtime environments often fail to support certain method calls, leading to errors when applications attempt to execute unsupported commands, limiting cross-platform compatibility and application execution across different implementations.

Innovation Solution

A method and system that utilize a class loader to translate unsupported method calls into supported ones during the loading of an object-oriented application, allowing the application to execute correctly by emulating the unsupported calls with supported ones.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If an application uses a method call that is unsupported by a particular implementation of the runtime environment, then the application cannot execute correctly in that environment, but rewriting the application for each implementation is complex and time-consuming

Engineering Contradiction:
Improvecross-platform compatibilityVSAvoidapplication rewriting complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a class loader as an intermediary component that sits between the application and the runtime environment. This class loader automatically translates unsupported method calls into supported ones, allowing the application to run correctly without modification. The intermediary handles the incompatibility issue transparently, enabling cross-platform compatibility while keeping the application code unchanged.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The translation of unsupported method calls into supported ones is performed in advance during the class loading phase, before the application executes. This preliminary action ensures that by the time the application runs, all method calls have already been adapted to work with the target runtime environment, preventing execution errors and eliminating the need for runtime modifications or rewriting.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If method calls are translated during loading to enable execution in unsupported environments, then cross-platform compatibility is improved, but the loading process becomes more complex

Engineering Contradiction:
Improveruntime environment compatibilityVSAvoidclass loading complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The class loader is designed to automatically detect unsupported method calls and translate them without requiring external intervention or complex configuration. The system performs self-service by having the class loader inherently understand the target runtime environment's capabilities and autonomously adapt the application's method calls, thereby improving compatibility while keeping the added complexity manageable and encapsulated within the loader itself.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9183011B2Method and system for runtime environment emulation
Publication Date: 2015.11.10 SUN MICROSYSTEMS INC
  • US9183011B2 patent drawing
  • US9183011B2 patent drawing
  • US9183011B2 patent drawing

AI summary

A method for runtime environment emulation involves loading an application class of an object-oriented application, where the object-oriented application is executing in a runtime environment, and where the application class includes a method call that is unsupported by the runtime environment. The method further involves translating, during loading of the application class, the unsupported method call into one or more method calls that are supported by the runtime environment, to obtain a translated class, where the one or more supported method calls emulate the unsupported method call.