Virtual Execution System Platform Adaptation Layer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtual execution systems on resource-constrained devices face performance penalties due to gaps between programming models and operating systems, and challenges in mapping APIs and runtime structures, which hinder efficient execution of application programs.

Innovation Solution

A virtual execution system with a platform adaptation layer that maps intermediate language instructions to appropriate APIs and runtime structures of the underlying operating system, utilizing metadata to optimize performance by considering non-functional aspects such as security, timing, and resource constraints, and adapting to the specific capabilities of the resource-constrained device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If virtual execution systems are used on resource-constrained devices, then application program compatibility and ease of programming are improved, but device performance deteriorates due to the gap between programming models

Engineering Contradiction:
Improveapplication program compatibilityVSAvoiddevice performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent introduces a platform adaptation layer as an intermediary component between the virtual execution system and the underlying operating system. This adaptation layer contains a mapping module that translates programming model constructs from the virtual execution system into equivalent operating system APIs and runtime structures, thereby resolving the programming model gap while maintaining both compatibility and performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If virtual execution systems are used on resource-constrained devices, then high-level language execution is enabled, but overhead increases due to mapping challenges between APIs and runtime structures

Engineering Contradiction:
Improvehigh-level language executionVSAvoidexecution overhead
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements a mapping module that performs preliminary translation of high-level language constructs into operating system-specific APIs and runtime structures before execution. By pre-establishing the mapping relationships between virtual execution system programming models and underlying operating system interfaces, the system eliminates the need for runtime interpretation and conversion, thereby reducing execution overhead while maintaining ease of high-level programming.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8694682B2Virtual execution system for resource-constrained devices
Publication Date: 2014.04.08 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8694682B2 patent drawing
  • US8694682B2 patent drawing
  • US8694682B2 patent drawing

AI summary

A virtual execution system that is configured to be used in a resource-constrained device. The resource-constrained device includes an operating system and an application program that includes instructions. The virtual execution system includes an execution engine that is configured to execute the application program, and to facilitate the compatibility of the application program with the operating system. Non-functional aspects characterize the instructions and the operating system. The execution engine has access to the non-functional aspects, and implements improvements during the execution of the application program based on the non-functional aspects.