In this section, I will describe three approaches to applying software updates: symmetric, or A/B, image update; asymmetric image update, also known as recovery mode update; and finally, atomic file update.
Types of update mechanism
Symmetric image update
In this scheme, there are two copies of the operating system, each comprising the Linux kernel, root filesystem, and system applications. They are labelled as A and B in the following diagram:
The bootloader has a flag that indicates which it should load. Initially, the flag is set to A, so the bootloader, loads OS image A. To install an update, the updater application, which is part of the operating system, overwrites OS image B. When complete, it changes the Boot flag...