Program Killing System Using Usage Pattern Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In systems where applications are killed due to low memory, high-priority programs are often mistakenly terminated, leading to user inconvenience as they are not efficiently differentiated from low-priority ones based on usage patterns.
Innovation Solution
A program killing system and method that collects usage counts, times, and orders of programs to generate candidate lists, comparing these with operation lists to produce a judgment list that prioritizes and sequentially kills low-priority programs, thereby reducing the likelihood of high-priority applications being terminated.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the system grants lower process priority to applications in the background, then memory management efficiency is improved, but user convenience deteriorates because frequently used applications are mistakenly killed
Solution Approach 1:
The system performs preliminary learning of user usage patterns before memory pressure occurs. By collecting usage counts, usage times, and usage orders in advance, the system builds a knowledge base that enables intelligent differentiation between high and low priority applications when memory killing becomes necessary, preventing frequently used apps from being terminated.
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring and collecting application usage data. This feedback loop allows the system to learn from user behavior patterns and adjust its priority assignment dynamically, ensuring that applications frequently accessed by users are protected from being killed even when they are in the background.
2Quantity of substance
If the low memory killer terminates background applications to free memory, then memory availability is improved, but application restart time increases due to loss of user behavior context
Solution Approach 1:
The system performs preliminary learning of user usage patterns before memory pressure occurs. By collecting usage counts, usage times, and usage orders in advance, the system builds a knowledge base that enables intelligent differentiation between high and low priority applications when memory killing becomes necessary, preventing frequently used apps from being terminated.
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring and collecting application usage data. This feedback loop allows the system to learn from user behavior patterns and adjust its priority assignment dynamically, ensuring that applications frequently accessed by users are protected from being killed even when they are in the background.
Data Source
AI summary
The disclosure discloses a program killing system including a memory and a processor. The processor obtains instructions from the memory to perform the following steps: collecting use counts, use times, and a first use order of programs; generating a first candidate list based on the plurality of use counts and the use times, generating a second candidate list based on the use counts, and generating a third candidate list based on the first use order; collecting a second use order of the programs in an operation time to generate an operation list; comparing each of the first candidate list, the second candidate list, and the third candidate list with the operation list to produce a comparison result; and outputting one of the first candidate list, the second candidate list, or the third candidate list as a judgment list according to the comparison result.


