Software Update Agent Differential Patching for Autonomous Vehicles
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for updating software in autonomous vehicles and smartphones are inefficient due to the need for large data downloads, resulting in high costs, long processing times, and system instability, especially when updates are interrupted.
Innovation Solution
A software update agent is installed on client devices that uses differential data to patch software programs and related data, allowing for quick and efficient updates by comparing old and new versions of software data, and includes a resume feature to restart updates from the last completed point if interrupted.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional software update methods are used, then software can be updated, but large amounts of data must be downloaded resulting in long processing times and high costs
Solution Approach 1:
The patent extracts only the differential data (changes) between old and new software versions rather than transferring the entire software package. The update agent compares version information, identifies only the modified blocks, and downloads solely those differences, dramatically reducing data transmission volume and processing time while maintaining complete update functionality.
Solution Approach 2:
The software update process is segmented into discrete blocks or modules. The system divides the software into manageable units, compares corresponding blocks between versions, and transfers only the modified segments. This segmentation enables selective updating of specific portions rather than complete reinstallation, improving efficiency.
2Productivity
If conventional software update methods are used, then software can be updated, but large data transmission increases cost and generates excessive traffic
Solution Approach 1:
The system extracts and transfers only the essential differential data representing changes between software versions. By identifying and transmitting solely the modified blocks rather than the complete software dataset, the patent significantly reduces data transmission volume, lowering communication costs and network traffic while maintaining full update capability.
3Productivity
If conventional software update methods are used, then software can be updated, but system stability deteriorates when updates are interrupted
Solution Approach 1:
The update agent performs preliminary actions by first comparing version information and generating a detailed update plan before actual data transmission begins. It identifies all blocks that need updating in advance, creating a structured sequence of operations. This preliminary planning ensures that updates can be executed systematically and resumed from the exact interruption point if needed, maintaining system stability.
Solution Approach 2:
The system incorporates feedback mechanisms where the update agent continuously monitors the update process status, tracks completed blocks, and maintains state information. This feedback enables the system to detect interruptions and resume updates from the correct position, ensuring reliability and preventing data redundancy or conflicts that would compromise system stability.
4Productivity
If wireless communication terminals download software via network, then software updates are performed, but radio resources cannot be efficiently used and other tasks cannot be performed simultaneously
Solution Approach 1:
The system performs partial action by updating only the necessary differential blocks rather than the entire software package. This partial update approach reduces the time window during which the terminal is occupied with update operations, allowing other tasks to be performed concurrently during the update process and improving overall system adaptability and resource utilization efficiency.
Data Source
Figure 1~2
Figure 3~4(d)
Figure 5~5(d)
AI summary
The present invention relates to a software update agent device and a patching method through the same, and provides a software update agent for patching software program and its related data on a client device such as an autonomous vehicle, a smartphone, and the like, thereby patching the software program used in the client device and its related data easily and quickly, based on the differential data between old and new versions of software data provided from remote software update management server.