Usage-Based OS Upgrade Blocking for Crash Risk Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing OS upgrade systems often block upgrades unnecessarily due to coarse static information, such as the presence of specific applications, without considering actual usage patterns, leading to missed security or software updates.
Innovation Solution
A cloud-based OS web service collects granular usage data from client devices to identify refined criteria for blocking or allowing OS upgrades, using local agents to gather data on application launches, modes, and fault conditions, and provides mitigation measures like user interfaces, troubleshooters, and patches to address potential faults.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If OS upgrades are blocked based on static presence of applications, then potential crash risks are reduced, but unnecessary blocking occurs and devices miss needed updates
Solution Approach 1:
The system changes the parameter basis for upgrade decisions from static application presence to dynamic usage probability. By calculating usage probability based on collected usage data and comparing it against thresholds, the system dynamically adjusts upgrade eligibility criteria, allowing upgrades when applications are present but unused, while blocking when usage probability exceeds thresholds.
Solution Approach 2:
The system implements feedback loops where usage data is continuously collected from client devices, processed to identify root-cause factors, and used to refine upgrade blocking decisions. This feedback mechanism allows the system to learn from actual usage patterns and improve the accuracy of crash risk prediction over time.
2Measurement precision
If granular usage data is collected to refine upgrade criteria, then upgrade accuracy is improved, but data collection complexity and resource consumption increase
Solution Approach 1:
The system segments the data collection and processing function into separate components: a lightweight data collector on client devices that gathers usage information, and a centralized processing system that analyzes the data and identifies root-cause factors. This segmentation reduces the complexity burden on individual devices while maintaining high measurement precision.
Solution Approach 2:
The system introduces an intermediary processing layer between data collection and upgrade decision-making. This intermediary analyzes usage data to identify root-cause factors and calculates usage probabilities, simplifying the overall system architecture by separating concerns and reducing the complexity of direct device-to-upgrade-decision interactions.
3Speed
If OS upgrades are allowed without usage analysis, then deployment speed is improved, but crash risk increases
Solution Approach 1:
The system performs preliminary analysis of usage data and identification of root-cause factors before making upgrade decisions. By calculating usage probabilities and comparing them against thresholds in advance, the system可以快速 determine upgrade eligibility without slowing down deployment, as the analysis is performed efficiently using collected usage patterns.
Data Source
AI summary
Systems and methods for selectively allowing or blocking operating system upgrades based on probabilities that the upgraded operating system may result in a fault condition. In an example, the technology may perform a method that includes receiving usage data from a client device to evaluate providing an operating system upgrade for the client device; accessing a root-cause factor that is likely to lead to a fault condition with the operating system upgrade; based on the usage data, identifying a fault probability for the root-cause factor; comparing the fault probability to a fault threshold for the root-cause factor; based on the comparison of the fault probability and the fault threshold, performing one of: blocking the operating system upgrade from being installed on the client device; or providing the operating system upgrade for installation on the client device.


