Fault Tolerant Device Upgrade via Atomic Partition Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing embedded device update technologies are not adequately tolerant to power faults and failures, especially in scenarios with limited storage and potential corruption, which can lead to incomplete or corrupted updates.
Innovation Solution
The implementation of atomic memory updates using primary and backup partition tables, where updates are verified and written to both tables, with the backup table being used if a power fault or failure occurs during the writing process, ensuring failure tolerance and integrity of the update process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional update methods are used, then the update process is simple, but the system is not tolerant to power faults and failures
Solution Approach 1:
The partition table is divided into two separate structures: a primary partition table and a backup partition table. This segmentation allows the system to maintain a valid boot configuration while updating, ensuring that power faults during updates do not leave the system in an unusable state. The primary partition table stores the current valid configuration, while the backup partition table stores the updated configuration, enabling safe atomic updates.
Solution Approach 2:
Before performing an update, the system prepares the backup partition table with the updated configuration data. This preliminary action ensures that if a power fault occurs during the update process, the system can still boot using the pre-prepared backup partition table, thus preventing corruption and maintaining reliability.
2Reliability
If atomic updates are implemented, then update integrity is maintained, but storage space requirements increase
Solution Approach 1:
The system creates a copy of the partition table structure (backup partition table) to store updated configuration data. This copying approach enables atomic updates where the entire partition table can be swapped between primary and backup states. The copy ensures that update integrity is maintained while the overhead is limited to the size of the partition table metadata rather than the entire filesystem.
Data Source
AI summary
A technology is directed to embedded device updates. In one example of the technology, a partition of a memory is atomically updated. The partition includes partition tables including a primary partition table and a back-up partition table. The partition tables include entries for the images included in the partition, and information associated with the images included in the partition. Atomically updating the partition of the memory includes writing an updated version to the partition. The written updated version is verified. An updated partition table is written to the back-up partition table. The updated partition table is written to the primary partition table. If it is determined that a power, or other, fault occurred while the primary partition table was being written, the primary partition table is overwritten with the back-up partition table.


