Edge Device Memory Management via Application Logic Swapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Edge devices face memory shortages due to limited resources, leading to inefficient memory management, where updating or replacing applications can cause network traffic increases and user inconvenience, especially in Over-the-Air environments, and existing methods like terminating background applications can result in unwanted termination of foreground applications.

Innovation Solution

A method that swaps the application logic of a foreground application with a new application on the same framework, storing the original application logic in a suspended pool, allowing efficient retrieval and reducing memory usage by sharing a single application framework.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If applications are bundled into one application with a shared application framework to reduce memory usage, then memory usage is reduced, but the entire application must be replaced if one workload needs updating, adding defects, or requiring feature extensions

Engineering Contradiction:
Improvememory usageVSAvoidapplication update complexity
Core Design Contradiction:
Quantity of substanceVSEase of manufacture

Solution Approach 1:

The patent segments the application into multiple independent workload modules that can be individually updated, added, or removed. Each workload is a separate executable unit within the bundled application, allowing partial updates without replacing the entire application. This resolves the contradiction by maintaining the memory efficiency of bundling while enabling granular updates of individual workloads.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the entire application is replaced to update one workload, then the workload can be updated, but application services are stopped during update and network traffic increases

Engineering Contradiction:
Improveworkload update capabilityVSAvoidapplication service continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary actions by pre-loading and validating update packages for individual workloads before deploying them. The update mechanism prepares replacement workload modules in advance, validates their compatibility, and stages them for deployment. This allows seamless updates without stopping application services, as the new workload is ready to swap in immediately when the current workload becomes hidden.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If background applications are terminated to free memory space, then memory space is freed, but applications that should not be terminated may be terminated

Engineering Contradiction:
Improveavailable memory spaceVSAvoidapplication execution integrity
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent introduces an intermediary application manager that mediates between the memory management system and individual applications. This manager monitors memory usage and application states, intelligently determining which applications can be suspended or swapped out based on their current status (shown/hidden), user preferences, and resource requirements. This prevents unwanted termination of foreground applications while still freeing memory when needed.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Quantity of substance

If a shown application is terminated before executing a new application, then memory can be freed, but the screen display flickers

Engineering Contradiction:
Improvememory availabilityVSAvoiddisplay stability
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent implements dynamic application state management where applications transition smoothly between shown and hidden states through controlled suspension and resumption. When memory pressure occurs, the system dynamically suspends hidden applications and swaps their logic, while maintaining the shown application's execution context. This dynamic approach prevents display flicker by ensuring shown applications remain active and their display state is preserved throughout the memory management process.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20240403072A1Reducing a total amount of memory usage of an edge device by swapping application logics
Publication Date: 2024.12.05 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20240403072A1 patent drawing
  • US20240403072A1 patent drawing
  • US20240403072A1 patent drawing

AI summary

Provided are techniques for reducing a total amount of memory usage of an edge device by swapping application logics. A first application is executed in a foreground on an application framework, where the first application has a shown status. In response to receiving a request to execute a swap application, it is determined that the first application and the swap application use a same screen type and a same non-shareable resource. An application logic of the first application is stored in a suspended application logic pool, where the first application changes from the shown status to a hidden-suspended status. The swap application is executed in the foreground on the application framework, where the swap application has the shown status.