Fuchsia (オペレーティングシステム)

Fuchsia（フクシア、フクシャ、フューシャ）は、ケーパビリティのコンセプトに基づくGoogleが開発中のオペレーティングシステム (OS) である。公式な告知も一切なく、2016年8月に突如としてGitHubにプロジェクトが公開されたことで最初に世に知られることとなった。
GitHub上のソースコードを精査したメディアによると、Fuchsiaは組み込みシステムからスマートフォン、タブレットやパーソナルコンピュータ (PC) まで幅広いデバイスで稼働させることが可能とみられる。2017年5月の更新ではユーザインタフェース (UI) が追加されるとともに、このプロジェクトが「残骸置き場ではない」と開発者が証言したことから、このOSがAndroidを置き換える可能性など、Googleの狙いについてメディアの臆測を呼び起こすこととなった。
Fuchsiaはフリーかつオープンソースのソフトウェアとして公開されており、3条項BSDライセンス、MITライセンス、Apache License 2.0など複数のソフトウェアライセンスを適用している。
概要.
Fuchsiaはコア部分（カーネル）のZircon（旧称: Magenta）、UIのArmadilloなどから構成されるリアルタイムオペレーティングシステムである。
カーネル.
これまでGoogleが開発してきたChromeOSやAndroidなどのOSではLinuxカーネルを採用しているが、Fuchsiaは、Zirconと呼ばれる新しいメッセージパッシングのカーネルをベースとしている。Zirconという名前は、ミネラルの1種であるジルコン（Zircon）に由来する。プロジェクトのドキュメントの異なる箇所で、Zirconをマイクロカーネルであるとも、マイクロカーネルではないとも説明している。Zirconのコードベースは、リソース消費量を低く抑え、幅広いデバイスで使用されることを目的とした、組み込みデバイス向けのリアルタイムカーネルであるLittle Kernel（LK）から派生している。このLittle Kernelは、Haikuが採用しているNewOSカーネルの共同開発者の1人であるTravis Geiselbrechtによって開発された。
Zirconは大部分はC++で、一部はアセンブリ言語で書かれている。少数のユーザーサービス、ドライバ、ライブラリを持つカーネルから構成され、それらはすべて、システムのブート、ハードウェアとの通信、ユーザープロセスのロードに必要である。Zirconが現在持っている機能としては、スレッドのハンドリング、仮想メモリ、プロセス間通信、オブジェクトの状態の変化の待機などがある。
Unixカーネルに大きく影響を受けているが、非常に異なる形を持っている。たとえば、Unix系のシグナルはサポートしないが、イベント駆動プログラミングやオブザーバーパターンを組み合わせて使用している。大部分のシステムコールはメインスレッドをブロックしない。リソースは、伝統的なUnixシステムではファイルとして表現されるのに対して、Zirconではオブジェクトとして表現される。
特徴.
FuchsiaのUIとアプリケーションは、Fuchsia以外にもAndroidとiOSを対象とするクロスプラットフォーム開発が可能な、Flutterと名付けられたソフトウェア開発キット (SDK) によって作成されている。FlutterではDartを用いて、120fpsでの描画が可能な高性能のアプリケーションを作成できる。また、FlutterにはEscherと名付けられたVulkanベースのレンダリングエンジンも含まれ、これによって特に、"Ars Technica"によると「陰影が多用される、Googleが規定したUIガイドラインのマテリアルデザインに向けた機能強化版とみられる」要素となる、ボリューメトリック・ソフトシャドウ (Volumetric soft shadows) と呼ばれる視覚効果の描画が支援される。
Flutterはクロスプラットフォーム開発に対応しているため、Fuchsiaの一部パーツをAndroidデバイスにインストールすることも可能である。もっとも、"Ars Technica"によるとFuchsiaのテストはできるものの全く「機能せず」、加えて「何の役にも立たないUIのプレースホルダーの寄せ集め」であり、最近使ったアプリ欄や設定メニュー、画面分割機能などの、FuchsiaのAndroidとの類似点が確認できる程度という状況だった。
その後の"Ars Technica"による検証は開発が順調なことを印象付けるものとなっており、何ひとつ機能しないということはなくなっていて、特にハードウェアのサポートが拡充されている。複数マウスポインタ操作に対応したことは予想外の改善点だったと説明されている。