Demystifying A/B Partitions: A Look at Android’s Seamless Updates

In Short
  • Google introduced Seamless Updates back in the year 2016.
  • Seamless updates make OTA updates install quicker and safely on your Android device.
  • Unlike the traditional method where updates are installed when restarting, seamless updates are installed in the background and require a usual restart.

Over the past decade, Android has improved both visually and internally, making it an efficient operating system. One feature that quietly enhances your experience is Seamless Updates. You may have seen Android experts throw this term around from time to time. So let’s break down what Seamless Updates mean on Android.

Seamless Updates on Android

Since 2016, Seamless updates have made it easier and quicker to install OTA (Over-the-air packages) updates on Android devices. Traditionally, upon receiving an update, your Android device would require a restart to start the installation process.

Android system update
Image Courtesy: Shutterstock

However, with seamless updates and what Google calls A/B partitioning, Android installs an update parallelly without interruptions. This way, a device would only need a usual restart once installed. Also, the updates in the A/B scheme can be streamed rather than downloading and unzipping the update package.

This is achieved by having two separate boot, system, and vendor partitions. If the technical jargon is too much for you, leave the explaining to us.

How Do They Work?

The internal structure of an Android device without seamless updates looks like this. The device can only start applying the update when it restarts, which is inconvenient.

Non-AB Android Architecture
Without Seamless Updates

And here’s the architecture of a device with A/B partitions and seamless updates. Notice how the Boot, System, and Vendor partitions are divided into two?

AB Android Architecture
With Seamless Updates

Your current active slot could be either A or B. Regardless, say you’re on Slot_A with Android 14 and receive an update to Android 15, as soon as you hit Download and install, Android will start unpacking and installing the necessary Boot, System, and Vendor components to the opposite slot, i.e., Slot_B which consists of Boot_B, System_B, and Vendor_B. At this point, Slot_A is still your active slot.

However, as soon as you hit restart, Android verifies the update and checks for the current active slot. If everything goes right, it sets the opposite slot as active and boots into the same. Here’s how to visualize it.

AB Android Architecture update process (1)

Benefits of Seamless Updates

You may ask, “All of this just for convenience sake?” No, Seamless Updates have many other advantages besides convenience:

  • Failsafe rollback: If the update encounters issues during installation on the opposite slot, the device can boot back to its previous active slot. This prevents boot loops or hard bricks.
  • Protecting Unused Space: Any I/O errors that may occur after installation may only affect the unused partitions, i.e., the currently active system remains intact.
  • Streamlined Downloads: Seamless Updates allow downloads and installation to happen simultaneously via streaming. This eliminates the need for extra free space on the Data or Cache partitions to temporarily store the update package.

Which Manufacturers Support Seamless Updates?

As you’d have expected, Google’s Pixels were the first to support seamless updates. Other OEMs including the likes of Nokia, Motorola, Xiaomi, OnePlus, OPPO, Vivo, and Sony soon followed. Samsung is among the recent adopters of seamless updates, having only added this structure to its Galaxy A55 model in March 2024.

What are your thoughts on seamless updates? What other similar changes to the Android architecture should Google bring? Pitch your ideas in the comments below.

#Tags
comment Comments 0
Leave a Reply