Prefetch Data Locking for Program Startup Speed

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The acceleration of computer system startup is hindered when frequently used programs' data occupies too much internal memory space, leading to the removal or destruction of pre-loaded data, which results in increased disk I/O operations and deteriorated system performance.

Innovation Solution

A program startup method that determines target programs based on history startup information, loads prefetch data into internal memory, locks it during OS startup, and unlocks it when the program is detected to start, allowing direct access from internal memory without disk I/O, thereby ensuring data is not removed or destroyed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If prefetch data is loaded into internal memory to accelerate program startup, then program startup speed is improved, but internal memory space is consumed

Engineering Contradiction:
Improveprogram startup speedVSAvoidinternal memory space
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent applies preliminary action by pre-loading prefetch data into internal memory before the program actually needs to run. The system identifies frequently used programs and loads their data into memory in advance, so that when the program starts, the data is already available, reducing startup time without requiring permanent memory allocation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by making the prefetch data management adaptive and dynamic. The system monitors program usage patterns, dynamically adjusts which data to prefetch, and manages memory allocation based on real-time needs. This allows the system to optimize between startup speed and memory consumption by adjusting prefetch behavior based on actual usage.

Inventive Principle:
Principle #15Dynamics

2Reliability

If prefetch data is locked in internal memory to prevent removal, then data availability is improved, but memory flexibility is reduced

Engineering Contradiction:
Improvedata availabilityVSAvoidmemory flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent applies segmentation by dividing memory management into different levels and types. Prefetch data is locked in specific memory regions to ensure availability, while other memory regions remain flexible for dynamic allocation. This segmentation allows simultaneous protection of critical prefetch data and maintenance of overall memory flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses parameter changes by adjusting memory lock/unlock states based on program execution status. When a program is running, its prefetch data is locked to ensure availability. When the program ends, the data is unlocked and can be removed or reused. This dynamic parameter change (locked/unlocked state) balances data reliability with memory flexibility.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If prefetch data is unlocked when program startup is detected, then memory flexibility is improved, but data loss risk increases

Engineering Contradiction:
Improvememory flexibilityVSAvoiddata availability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements feedback by continuously monitoring program execution status and using this information to control prefetch data locking/unlocking. The system detects when a program starts and automatically unlocks the corresponding prefetch data, then monitors program completion to determine when to re-lock or remove the data. This feedback loop ensures data is available when needed while maintaining memory flexibility.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies self-service by enabling the system to automatically manage prefetch data locking and unlocking without external intervention. The system itself monitors program startup events and autonomously adjusts memory lock states, eliminating the need for manual memory management while ensuring data availability and flexibility.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9547507B2Program startup method, apparatus and terminal
Publication Date: 2017.01.17 TENCENT TECHNOLOGY (SHENZHEN) CO LTD
  • US9547507B2 patent drawing
  • US9547507B2 patent drawing
  • US9547507B2 patent drawing

AI summary

A program startup method, apparatus and terminal are provided. The method includes: determining at least one target program from programs according to history startup information of the plurality of programs in a prefetch database, where the history startup information comprises startup moments of the plurality of programs; loading prefetch data corresponding to the target program into internal memory and locking the prefetch data in startup of an automatic startup item of an operating system; unlocking the prefetch data corresponding to the target program in the case where a startup event of the target program is detected; accessing the prefetch data corresponding to the target program in the internal memory; and running code of the target program according to the prefetch data corresponding to the target program to start up the target program.