Boot Priority Management for Program Loading Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Devices face delays during boot-up due to the need to load various programs, often including those that are seldom used or not needed at boot time, leading to a trade-off between boot time and the number of programs loaded.

Innovation Solution

An apparatus and method that collect usage data to assign boot priorities to programs based on usage time and schedule, selecting programs to load during boot based on these priorities, with optional consideration of calendar data and user input, to optimize the loading process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all programs are loaded during boot, then system reliability is improved, but boot time increases

Engineering Contradiction:
Improvesystem reliabilityVSAvoidboot time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the program loading process into two distinct phases: critical programs loaded during boot, and non-critical programs loaded after boot. The boot module loads only essential programs (boot loader, device drivers, core system services) during the boot period, while the operating system loads additional programs afterward. This segmentation resolves the contradiction by ensuring system reliability through loading critical programs while minimizing boot time by excluding non-essential programs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by pre-identifying and loading critical programs during the boot period before the full operating system environment is established. The boot module proactively loads essential system components in advance, ensuring system reliability is established early, while non-critical programs are deferred to post-boot loading, thereby reducing boot time.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If fewer programs are loaded during boot, then boot time is reduced, but system reliability may deteriorate

Engineering Contradiction:
Improveboot timeVSAvoidsystem reliability
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent applies local quality by assigning different loading priorities to different programs based on their criticality. Essential programs (boot loader, device drivers, core services) are designated for boot-time loading with high priority, while non-essential programs (applications, optional services) are designated for post-boot loading. This differentiated approach ensures system reliability by loading critical components while reducing boot time by excluding non-critical ones.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent applies partial action by loading only the necessary subset of programs during boot rather than all programs. The boot module selectively loads essential system components sufficient to establish a functional operating environment, while deferring the loading of additional programs to the post-boot phase. This partial loading approach reduces boot time while maintaining system reliability through adequate critical program loading.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10489163B2Loading a program during boot of a device
Publication Date: 2019.11.26 LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
  • US10489163B2 patent drawing
  • US10489163B2 patent drawing
  • US10489163B2 patent drawing

AI summary

An apparatus, method, and program product are disclosed for loading a program during boot of a device. A monitor module collects usage data for each of one or more programs executing on a device. The usage data for each program comprising an amount of time that the program was used and a schedule of when the program was used. A priority module assigns a boot priority to each of the one or more programs based on the amount of time that each program was used. A boot module selects one or more programs to load during a boot period for the device based on each program's usage schedule. The one or more selected programs are loaded according to each selected program's boot priority.