Container Layer Composition for Cross-ISA Application Portability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing containerized applications lose portability when packaged for different machines with varying instruction set architectures, necessitating multiple builds or performance-degrading emulation.

Innovation Solution

A method to create machine-neutral applications by determining the instruction set architecture of the deployment environment, dynamically building and inserting machine-dependent layers, and using dynamic-composition metadata to adapt containers to the underlying ISA.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If machine-neutral applications are packaged into a runnable container, then portability is maintained, but the container can only run on machines supporting the specific instruction set architecture

Engineering Contradiction:
ImproveportabilityVSAvoidcontainer architecture
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The container is divided into machine-neutral layers (application code, runtime environment) and machine-dependent layers (instruction set-specific binaries). This segmentation allows the machine-neutral components to maintain portability while the machine-dependent components adapt to specific architectures at runtime.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The container employs dynamic composition where machine-dependent layers are selected and inserted at runtime based on the host machine's instruction set architecture. This dynamic adaptation enables a single container image to function on multiple different architectures without compromising portability.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If multiple containers are built for different instruction set architectures, then compatibility with different machines is achieved, but development and deployment complexity increases

Engineering Contradiction:
Improvemachine compatibilityVSAvoidcontainer building process
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

A single container image is designed to be universal across multiple instruction set architectures. The container includes machine-neutral application layers that can run on any architecture, combined with a mechanism to dynamically select appropriate machine-dependent layers, eliminating the need to maintain separate container images for each architecture.

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

Solution Approach 2:

An intermediary layer (machine-dependent layer) is introduced between the machine-neutral application and the host hardware. This intermediary adapts the machine-neutral application to the specific instruction set architecture of the host machine, allowing one container image to serve multiple architectures without increasing development complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If emulation is used to run applications on different architectures, then cross-architecture compatibility is achieved, but application performance degrades

Engineering Contradiction:
Improvecross-architecture executionVSAvoidapplication performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

Instead of using emulation for the entire application, the invention applies machine-dependent layers only to the specific instruction set architecture components where native execution is needed. This allows optimized native execution on the host architecture while maintaining the ability to run on different architectures, avoiding the performance penalty of full emulation.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250383872A1Machine neutral containerized applications
Publication Date: 2025.12.18 ORACLE INT CORP
  • US20250383872A1 patent drawing
  • US20250383872A1 patent drawing
  • US20250383872A1 patent drawing

AI summary

The system and methods for creating, managing, and transmuting containerized applications to build machine-neutral applications that can run on different machines with different processor architectures. The present disclosure receives an input container comprising of a machine-neutral application layer, a metadata layer or one or more machine-dependent layers. An instruction set architecture (ISA) is determined and one or more modified input containers are generated based on the identified ISA. One or more machine-dependent layers are dynamically built and inserted in one or more modified input containers. The present disclosure creates a dynamic-composition metadata layer in modified input containers, wherein the dynamic-composition metadata includes execution instructions, environment variables, or machine specific attributes. The present disclosure selects and inserts the matching machine-dependent layer of one or more machine-dependent layers using dynamic-composition metadata in the modified input containers. One or more modified input containers that are ISA-agnostic are returned as output result.