Fuchsia is an
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
capability-based operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
developed by
Google
Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
. In contrast to Google's
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
-based operating systems such as
ChromeOS
ChromeOS, sometimes stylized as chromeOS and formerly styled as Chrome OS, is a Linux-based operating system designed by Google. It is derived from the open-source ChromiumOS and uses the Google Chrome web browser as its principal user interfac ...
and
Android
Android may refer to:
Science and technology
* Android (robot), a humanoid robot or synthetic organism designed to imitate a human
* Android (operating system), Google's mobile operating system
** Bugdroid, a Google mascot sometimes referred to ...
, Fuchsia is based on a custom
kernel
Kernel may refer to:
Computing
* Kernel (operating system), the central component of most operating systems
* Kernel (image processing), a matrix used for image convolution
* Compute kernel, in GPGPU programming
* Kernel method, in machine lea ...
named Zircon. It publicly debuted as a self-hosted
git
Git () is a distributed version control system: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data integ ...
repository in August 2016 without any official corporate announcement. After years of development, its official product launch was on the first-generation
Google Nest Hub
Google Nest, previously named Google Home, is a line of smart speakers developed by Google under the Google Nest brand. The devices enable users to speak voice commands to interact with services through Google Assistant, the company's virtua ...
, replacing its original
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
-based Cast OS.
History
In August 2016, media outlets reported on a mysterious
source code
In computing, source code, or simply code, is any collection of code, with or without comment (computer programming), comments, written using a human-readable programming language, usually as plain text. The source code of a Computer program, p ...
repository published on
GitHub
GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, co ...
, revealing that
Google
Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
was developing a new operating system named Fuchsia. No official announcement was made, but inspection of the code suggested its capability to run on various devices, including "dash infotainment" systems for cars, embedded devices like
traffic lights
Traffic lights, traffic signals, or stoplights – known also as robots in South Africa are signalling devices positioned at road intersections, pedestrian crossings, and other locations in order to control flows of traffic.
Traffic lights ...
,
digital watches
A watch is a portable timepiece intended to be carried or worn by a person. It is designed to keep a consistent movement despite the motions caused by the person's activities. A wristwatch is designed to be worn around the wrist, attached by ...
,
smartphones
A smartphone is a Mobile device, portable computer device that combines Mobile phone, mobile telephone and Mobile computing, computing functions into one unit. They are distinguished from feature phones by their stronger hardware capabilities ...
,
tablets, and
PCs
A personal computer (PC) is a multi-purpose microcomputer whose size, capabilities, and price make it feasible for individual use. Personal computers are intended to be operated directly by an end user, rather than by a computer expert or techn ...
. Its architecture differs entirely from the
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
-based Android and ChromeOS due in part to its unique Zircon kernel, formerly named Magenta.
In May 2017, ''
Ars Technica
''Ars Technica'' is a website covering news and opinions in technology, science, politics, and society, created by Ken Fisher and Jon Stokes in 1998. It publishes news, reviews, and guides on issues such as computer hardware and software, sc ...
'' wrote about Fuchsia's new
user interface
In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
, an upgrade from its
command-line interface at its first reveal in August. A developer wrote that Fuchsia "isn't a toy thing, it's not a
20% Project
Side project time is a type of employee benefit constituting a guarantee from employers that their employees may work on their personal projects during some part (usually a percentage) of their time at work. Side project time is limited by two stip ...
, it's not a dumping ground of a dead thing that we don't care about anymore". Though users could test Fuchsia, nothing "works", because "it's all a bunch of placeholder interfaces that don't do anything". They found multiple similarities between Fuchsia's interface and Android, including a Recent Apps screen, a Settings menu, and a split-screen view for viewing multiple apps at once.
Multiple media outlets wrote about the project's seemingly close ties to Android, with some speculating that Fuchsia might be an effort to "re-do" or replace Android in a way that fixes its problems.
In January 2018, Google published a guide on how to run Fuchsia on
Pixelbook
The Pixelbook (codenamed Eve during development) is a portable laptop/tablet hybrid computer developed by Google which runs ChromeOS. It was announced on October 4, 2017, and was released on October 30. In September 2022, Google canceled future ...
s. This was implemented successfully by ''Ars Technica'', where experts were impressed with the progress, noting that things were then working, and were especially pleased by the hardware support and multiple mouse pointers.
A Fuchsia device was added to the Android ecosystem in January 2019 via the
Android Open Source Project
Android is a mobile operating system based on a modified version of the Linux kernel and other open-source software, designed primarily for touchscreen mobile devices such as smartphones and tablets. Android is developed by a consortium of deve ...
(AOSP). Google talked about Fuchsia at
Google I/O 2019.
Hiroshi Lockheimer, Senior Vice President of Chrome and Android, described it as one of Google’s experiments around new operating system concepts.
On July 1, 2019, Google announced the official website of the development project with source code and documentation.
Roughly a year and a half later, on December 8, 2020, Google announced that it was "expanding Fuchsia's open-source model" including making mailing lists public, introducing a governance model, publishing a roadmap, and using a public issue tracker.
In May 2021, Google employees confirmed that it had deployed Fuchsia in the consumer market for the first time, within a software update to the first-generation
Google Nest Hub
Google Nest, previously named Google Home, is a line of smart speakers developed by Google under the Google Nest brand. The devices enable users to speak voice commands to interact with services through Google Assistant, the company's virtua ...
that replaces its existing
Chromecast
Chromecast is a line of digital media players developed by Google. The devices, designed as small dongles, can play Internet- streamed audio-visual content on a high-definition television or home audio system. The user can control playback wi ...
-based software. The update contains no user-facing changes to the device's software or user interface. After the initial wave of updates to preview devices, the update was rolled out to all Nest Hub devices in August 2021.
Overview
Fuchsia is named for the color
fuchsia
''Fuchsia'' () is a genus of flowering plants that consists mostly of shrubs or small trees. The first to be scientifically described, ''Fuchsia triphylla'', was discovered on the Caribbean island of Hispaniola (Haiti and the Dominican Republic ...
, which is a combination of pink (also the
codename
A code name, call sign or cryptonym is a code word or name used, sometimes clandestinely, to refer to another name, word, project, or person. Code names are often used for military purposes, or in espionage. They may also be used in industrial c ...
of Apple's advanced
Pink
Pink is the color of a namesake flower that is a pale tint of red. It was first used as a color name in the late 17th century. According to surveys in Europe and the United States, pink is the color most often associated with charm, politeness, ...
operating system of the 1990s) and purple (also the codename of the first-generation
iPhone).
Its
user interface
In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
and
apps are written in
Flutter
Flutter may refer to:
Technology
* Aeroelastic flutter, a rapid self-feeding motion, potentially destructive, that is excited by aerodynamic forces in aircraft and bridges
* Flutter (American company), a gesture recognition technology company acqu ...
, a
software development kit
A software development kit (SDK) is a collection of software development tools in one installable package. They facilitate the creation of applications by having a compiler, debugger and sometimes a software framework. They are normally specific ...
allowing cross-platform development abilities for Fuchsia, Android and
iOS
iOS (formerly iPhone OS) is a mobile operating system created and developed by Apple Inc. exclusively for its hardware. It is the operating system that powers many of the company's mobile devices, including the iPhone; the term also include ...
. Flutter produces apps from
Dart
Dart or DART may refer to:
* Dart, the equipment in the game of darts
Arts, entertainment and media
* Dart (comics), an Image Comics superhero
* Dart, a character from ''G.I. Joe''
* Dart, a ''Thomas & Friends'' railway engine character
* D ...
. Escher is the
Vulkan
Vulkan is a low- overhead, cross-platform API, open standard for 3D graphics and computing. Vulkan targets high-performance real-time 3D graphics applications, such as video games and interactive media. Vulkan is intended to offer higher perform ...
-based
graphics
Graphics () are visual images or designs on some surface, such as a wall, canvas, screen, paper, or stone, to inform, illustrate, or entertain. In contemporary usage, it includes a pictorial representation of data, as in design and manufacture, ...
rendering
Render, rendered, or rendering may refer to:
Computing
* Rendering (computer graphics), generating an image from a model by means of computer programs
* Architectural rendering, creating two-dimensional images or animations showing the attributes ...
engine, with specific support for "volumetric soft shadows", an element that ''Ars Technica'' wrote, "seems custom-built to run Google's shadow-heavy '
Material Design
Material Design (codenamed Quantum Paper) is a design language developed by Google in 2014. Expanding on the "cards" that debuted in Google Now, Material Design uses more grid-based layouts, responsive animations and transitions, padding, and ...
' interface guidelines".
The Flutter cross-platform software development kit allows users to install parts of Fuchsia on Android devices.
A special version of
Android Runtime
Android Runtime (ART) is an application runtime environment used by the Android (operating system), Android operating system. Replacing Dalvik (software), Dalvik, the process virtual machine originally used by Android, ART performs the Translato ...
for Fuchsia is planned to run from a FAR file, the equivalent of the
Android APK.
Kernel
Fuchsia is based on a new
message passing
In computer science, message passing is a technique for invoking behavior (i.e., running a program) on a computer. The invoking program sends a message to a process (which may be an actor or object) and relies on that process and its supporti ...
kernel, named Zircon after the mineral
zircon
Zircon () is a mineral belonging to the group of nesosilicates and is a source of the metal zirconium. Its chemical name is zirconium(IV) silicate, and its corresponding chemical formula is Zr SiO4. An empirical formula showing some of th ...
. Its
codebase
In software development, a codebase (or code base) is a collection of source code used to build a particular software system, application, or software component. Typically, a codebase includes only human-written source code files; thus, a codeba ...
was derived from that of Little Kernel (LK) for
embedded device
An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is ''embedded'' a ...
s, aimed for low resource uses for a wide variety of devices.
LK was developed by Travis Geiselbrecht, who had also co-authored the NewOS kernel used by
Haiku
is a type of short form poetry originally from Japan. Traditional Japanese haiku consist of three phrases that contain a ''kireji'', or "cutting word", 17 ''On (Japanese prosody), on'' (phonetic units similar to syllables) in a 5, 7, 5 pattern, ...
, a free software reimplementation of
BeOS
BeOS is an operating system for personal computers first developed by Be Inc. in 1990. It was first written to run on BeBox hardware.
BeOS was positioned as a multimedia platform that could be used by a substantial population of desktop users a ...
.
Zircon is written mostly in
C++
C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significa ...
, with some parts in
assembly language. It is composed of a kernel with a small set of user services, drivers, and libraries which are all necessary for the system to boot, communicate with the hardware, and load the user processes.
Its present features include handling threads, virtual memory, processes intercommunication, and waiting for changes in the state of objects.
It is heavily inspired by
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
kernels but differs greatly. For example, it does not support
Unix-like
A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-li ...
signals but incorporates
event-driven programming
In computer programming, event-driven programming is a programming paradigm in which the flow of the program is determined by events such as user actions (mouse clicks, key presses), sensor outputs, or message passing from other programs or th ...
and the
observer pattern
In software design and engineering, the observer pattern is a software design pattern in which an object, named the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by ...
. Most system calls do not block the main thread. Resources are represented as
objects
Object may refer to:
General meanings
* Object (philosophy), a thing, being, or concept
** Object (abstract), an object which does not exist at any particular time or place
** Physical object, an identifiable collection of matter
* Goal, an ai ...
rather than files, unlike traditional Unix systems.
References
External links
*
{{Mobile operating systems
2016 software
C++ software
Capability systems
Embedded operating systems
Free software operating systems
Free software programmed in C
Free software programmed in Go
Free software programmed in Rust
Fuchsia
''Fuchsia'' () is a genus of flowering plants that consists mostly of shrubs or small trees. The first to be scientifically described, ''Fuchsia triphylla'', was discovered on the Caribbean island of Hispaniola (Haiti and the Dominican Republic ...
Fuchsia
''Fuchsia'' () is a genus of flowering plants that consists mostly of shrubs or small trees. The first to be scientifically described, ''Fuchsia triphylla'', was discovered on the Caribbean island of Hispaniola (Haiti and the Dominican Republic ...
Software using the Apache license
Software using the BSD license
Software using the MIT license
x86-64 operating systems