Application Startup Control via Segmented Code Loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Applications face performance issues due to the need to load the entire application into memory during startup, leading to increased memory load and delays, as existing technologies do not effectively manage memory utilization and startup time.

Innovation Solution

The solution involves logical segmentation of application code into pages, with code files generated to include specific elements, dependencies, and entry points, allowing for on-demand loading and execution, reducing memory load and startup time by isolating, sharing, and composing pages as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the entire application is loaded into memory during startup, then the application can operate correctly, but memory utilization increases and startup time is delayed

Engineering Contradiction:
Improveapplication correctnessVSAvoidstartup time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The application code is segmented into multiple pages, where only the startup page is loaded into memory initially. Other pages are loaded on-demand when needed, reducing initial memory utilization and startup time while maintaining application correctness through progressive loading of required code segments.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the entire application is loaded into memory during startup, then the application can operate correctly, but memory load increases

Engineering Contradiction:
Improveapplication correctnessVSAvoidmemory load
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The application code is divided into multiple page segments that are loaded progressively. Only the necessary startup page is loaded into memory initially, reducing the quantity of code in memory while ensuring application correctness through on-demand loading of additional pages when required.

Inventive Principle:
Principle #1Segmentation

3Loss of time

If code files are loaded on-demand based on page relationships, then memory utilization is reduced and startup time is reduced, but system complexity increases

Engineering Contradiction:
Improvestartup timeVSAvoidsystem complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system performs preliminary analysis to determine page relationships and dependencies before runtime. This pre-computed relationship information is stored and used during startup to efficiently load only the necessary code files, reducing startup time and memory utilization while managing system complexity through advance preparation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10725838B2Application startup control
Publication Date: 2020.07.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10725838B2 patent drawing
  • US10725838B2 patent drawing
  • US10725838B2 patent drawing

AI summary

In some examples, application startup control may include determining a relationship between a first page and a second page of an application, and generating a first code file for the first page based upon the determined relationship. Application startup control may further include generating a second code file for the second page. The first code file may include code to load the second code file in response to the first code file being loaded and executed.