close
close

Google is bringing Fuchsia OS to Android devices, but not in the way you might expect

In short

  • Google is working on “microfuchsia,” a stripped-down version of the Fuchsia operating system that runs on the Google Nest Hub device.
  • Microfuchsia is designed to run in a virtual machine, and Google is apparently experimenting with it on Android devices.
  • It’s unclear why Google wants to do this, but one theory is that it will allow it to perform certain tasks more optimally and more safely than the microdroid.

Google is responsible for developing the world’s two most popular consumer operating systems: Android and Chrome OS. However, behind the scenes, the company has been working on a third operating system called Fuchsia OS. Since Fuchsia first appeared, it has been the subject of much speculation, including theories and predictions that it would eventually replace Android. While that seems unlikely at the moment, Google is still testing Fuchsia in new and interesting places. Most recently, it has been working on creating a stripped-down version of the operating system that will run in a virtual machine on Android devices.

Fuchsia OS is an open-source operating system, much like Android and Chrome OS. Unlike the latter two, however, Fuchsia is not built on the Linux kernel. Instead, it is built on Zircon, which Google says “consists of a kernel and a small set of user-space services, drivers, and libraries necessary for basic system functions, such as booting.” Zircon’s “microkernel-like architecture” allows Fuchsia to “reduce the amount of trusted code running on the system” to just a few basic functions, which can lead to improved security and stability by reducing the amount of highly privileged code compared to typical “monolithic” kernels.

Zircon Core Services

Rumors dating back to mid-2018 suggested that Google had ambitious plans to bring Fuchsia OS to smartphones, computers, and smart home devices. While the supposed goal of eventually replacing Android and Chrome OS with Fuchsia still seems incredibly far off (if not completely canceled), Google has successfully brought the operating system to smart home devices, starting with the first-generation Nest Hub in 2021. The team then successfully updated the larger Nest Hub Max and second-generation Nest Hub to Fuchsia OS, making them the second and third devices to run the operating system, respectively.

To expand Fuchsia beyond smart home devices, Google is working on projects like Starnix to run unmodified Linux binaries on Fuchsia devices. Additionally, since late April of this year, Google has been working on a new project called “microfuchsia,” which aims to make Fuchsia bootable on existing devices using virtualization. According to Google, Microfuchsia is a build of the Fuchsia operating system that is designed for virtual machines and is designed to run on virtualization solutions like QEMU and pKVM.

pKVM is a hypervisor for the Android Virtualization Framework (AVF), a feature that Google introduced in Android 13 on select devices. Google developed AVF and pKVM to safely run specific types of workloads in an isolated environment. To run these workloads, Google created a heavily stripped-down version of Android called “microdroid,” which includes the bare minimum of core Android services, tools, and libraries.

Android Virtualization Framework Architecture

While it’s not confirmed, it’s possible that Google intends to implement microfuchsia and use it in a similar way to microdroid. In other words, Google may intend for microfuchsia to handle tasks that the host operating system—in this case, Android—must perform securely. Microdroid already meets that goal, but it’s possible that microfuchsia will perform tasks faster or more securely (or both).

Recently, patches were submitted to the Android Open Source Project (AOSP) that form the basis of a new APEX file that will include microfuchsia. APEX is a file format used by Project Mainline to package system components, and the APEX file contains all the binaries related to AVF on supported Android devices. While com.android.microfuchsia The APEX file is not available yet, but references to its existence in AOSP and code found in Fuchsia Gerrit are quite interesting in themselves.

For now, we can only speculate on what Google plans to do with Microfuchsia, but we’ll be watching closely to see if this project actually works out.

Got a tip? Talk to us! Email our team at [email protected]. You can remain anonymous or get credit for the information, it’s your choice.