Google has open sourced the at least some of the bits for a new operating system planned for hardware with fast processors and lots of RAM.
Nothing has officially been said about Fuchsia, and its GitHub page briefly describes the new Google project as Pink + Purple == Fuchsia (a new Operating System). Chris McKillop, Product and Engineering Leader at Google, detailed Purple as a “system with high performance graphics, low-latency input, and a beautiful UI” and Pink as a “modular system for developers and users.” The team is made of “a bunch of nerds”, including Brian Swetland and Travis Geiselbrecht, who have worked on Android, BeOS, ChromeOS, DangerOS, iOS, MacOS, QNX, webOS, and other systems in the past.
Fuchsia is not built on top of a Linux kernel as Android is, but rather on Magenta. Swetland described Magenta as a mini-kernel with
97% of drivers and services live in userspace, but the syscall surface provides a wider variety of primitives than just send/recv/exit that a hardcore microkernel design might embrace).
It inherits from LK, which was written in C, but the new surfaces in the Magenta kernel are written in C++ (a restrained, limited C++).
Magenta’s drivers and services are written mostly in C, but some will be rewritten into C++ over time, according to Swetland. Also, anyone would be able to add components written in other languages providing they communicate with the kernel through the existing RPC protocols.
Fuchsia currently runs on Intel Broadwell and Skylake, but it can be enhanced to run on older Intel or even AMD processors. Support for ARM and Raspberry Pi 3 is to be added soon. The OS is made for “modern phones and modern personal computers with fast processors” and “non-trivial amounts of RAM,” which made some speculate that it may replace Android some day. Although we asked Google for more details regarding this new operating system, they said Fuchsia is one of many open source projects revolving at Google and it is too early to provide details. But in order to dispel the rumors, they did want to mention that Fuchsia is “NOT at all related to Android or Chrome OS.”
Fuchsia seems to be using the Flutter widget framework for its user interface with rendering done in Escher, a physically-based renderer supporting sophisticated effects such as volumetric shadows, color bleeding, light diffusion and others. These high graphic capabilities and the targeted hardware platforms with fast processors and lots of RAM suggest the OS may be intended for virtual reality headsets if it proves successful.
To help building applications, Fuchsia uses Mojo, which is a “collection of inter-process communication technologies, protocols and a runtime for creating applications and services that are composable while being loosely coupled.” Mojo has bindings for Dart, Go, Java, JavaScript, Python and Rust, according to Pauli Olavi Ojala.