Recently the news broke that Google has started to distribute a new firmware based on the Fuchsia operating system for smart photo frames Nest Hub Max released since 2019.
It is mentioned that in this first stage, Fuchsia-based firmware will start shipping participants in the "preview" program from Google and, if there are no unforeseen issues during the test deployment, the firmware will be applied to other Nest Hub Max users' devices.
For those new to the Nest Hub Max, you should know that this is the second consumer device to feature the Fuchsia OS.
The first Fuchsia-based firmware received a year ago was the Nest Hub model, which features a smaller screen and the absence of a built-in video camera used in a video surveillance and security system.
Despite the replacement of the operating system in the firmware, user interface and functionality are fully preserved and end users shouldn't notice any difference, since the interface is based on the Flutter framework and abstracts away from low-level components.
This OS replacement update for the Nest Hub Max has been in development since at least December of last year. Starting this week, it's available to a small group of users enrolled in the Preview Program. Google likely plans to look into any potential issues before proceeding with a broader rollout.
Previously, Nest Hub Max devices, which combine the functions of a photo frame, a multimedia system and a smart home control interface, used firmware based on Cast shell and the Linux kernel.
Fuchsia OS has been developed by Google since 2016, taking into account the scalability and security weaknesses of the Android platform.
The system is based on the Zircon microkernel, based on the developments of the LK project, extended for use on various classes of devices, including smartphones and personal computers. Zircon extends LK with support for shared libraries and processes, a user level, an object management system, and a capabilities-based security model.
Drivers are implemented as dynamic user space libraries loaded by the devhost process and managed by Device Manager (devmg).
Fuchsia has its own graphical interface written in Dart using the Flutter framework. The project also develops the Peridot UI framework, the Fargo package manager, the libc standard library, the Escher rendering system, the Magma Vulkan driver, the Scenic composite manager, MinFS, MemFS, ThinFS (FAT language in Go ) and the Blobfs file, as well as the FVM partition manager. For application development, support is provided for C/C++, Dart, Rust is also allowed in system components, in the Go network stack, and in the Python language build system.
The boot process uses a system manager that includes appmgr to create the initial software environment, sysmgr to create the boot environment, and basemgr to set up the user environment and organize login.
To ensure security, an advanced sandbox isolation system is proposed, in which new processes do not have access to kernel objects, cannot allocate memory, and cannot execute code, and a namespace system is used to access resources, which determines the available permissions.
The platform provides a framework for building components, which are programs that run in its sandbox and can interact with other components via IPC.
Finally, if you are interested in knowing more about it, you can consult the following link, in which you can know the status of the firmware for some of google devices.