Dynamic Software Patching via Simulation and Backup
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The process of patching software applications often results in downtime and inefficiency due to the need to deactivate the application and account for unique hardware and software interactions, leading to productivity losses and potential disruptions in complex systems.
Innovation Solution
A dynamic software patch installation method that identifies an optimal time to disable the target application, performs a simulation of code replacement, and generates an impact analysis to ensure minimal disruption, replacing execution code only if the deviation from pre-determined parameters is below a threshold, thereby minimizing system disablement and optimizing patching efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional patching is performed by deactivating the software application, then code updates can be applied to repair defects and improve security, but productivity is lost through system downtime
Solution Approach 1:
The patent performs preliminary actions by creating a complete backup of the original executable code and establishing a rollback mechanism before applying patches. This allows the system to maintain availability during patching by能够快速 restore if issues occur, resolving the contradiction between security updates and system availability
Solution Approach 2:
The patent introduces an intermediary backup copy of the original executable code that mediates between the patching process and the running system. This intermediary allows patches to be applied and tested without completely deactivating the application, maintaining productivity while improving security
2Reliability
If the software application is deactivated for patching, then code updates can be implemented, but additional problems arise from not accounting for unique hardware and software interactions
Solution Approach 1:
The patent applies partial action by selectively patching only the specific code sections that need updating while preserving the rest of the executable code that handles hardware and software interactions. This approach maintains adaptability to unique system configurations while still implementing necessary security and defect repairs
Solution Approach 2:
The patent performs preliminary analysis of hardware and software interactions before applying patches, using the backup copy to understand the original system behavior. This ensures that patches are applied in a way that maintains compatibility with unique system configurations
3Stability of the object's composition
If comprehensive testing is performed to ensure patch compatibility with all hardware and software interactions, then system stability is maintained, but patching time and complexity increase
Solution Approach 1:
The patent creates a backup copy of the original executable code that can be used for testing patch compatibility without affecting the running system. This copying approach allows comprehensive stability testing to be performed on the backup while the original system continues to operate, reducing patching complexity and time
Solution Approach 2:
The patent performs preliminary testing on the backup copy before applying patches to the production system. This preliminary action ensures system stability is maintained while avoiding the complexity of extensive testing during the actual patching process
Data Source
AI summary
Method and apparatus for a system to efficiently and with limited disruption of overall activities, install software patches into a target application. The system maps out segments comprising the various system units that interact with the target application and that may be impacted by the patch. A model simulates various possible alternatives for deactivating none, one, some or all of the various units of the segment in identification of an optimal patching strategy. Implementation of the optimal strategy results in efficient patching with minimal disruption of system activities.


