Fault Tolerant Device Upgrade via Atomic Partition Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvefault toleranceVSAvoidupdate process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If atomic updates are implemented, then update integrity is maintained, but storage space requirements increase

Engineering Contradiction:
Improveupdate integrityVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

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.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11210173B2Fault tolerant device upgrade
Publication Date: 2021.12.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11210173B2 patent drawing
  • US11210173B2 patent drawing
  • US11210173B2 patent drawing

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.