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

Fuchsia
開発者 Google
プログラミング言語
OSの系統 Zircon[1]
開発状況 開発中
ソースモデル オープンソース
初版 2021年5月25日 (2年前) (2021-05-25)
リポジトリ ウィキデータを編集
使用できる言語 英語
プラットフォーム
カーネル種別 マイクロカーネル
ライセンス
ウェブサイト fuchsia.dev ウィキデータを編集
テンプレートを表示

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という名前は、鉱物であるジルコン(Zircon)に由来する。プロジェクトのドキュメントの異なる箇所で、Zirconをマイクロカーネルであるとも、マイクロカーネルではないとも説明している[2][3]。Zirconのコードベースは、リソース消費量を低く抑え、幅広いデバイスで使用されることを目的とした、組み込みデバイス向けのリアルタイムカーネルであるLittle Kernel(LK)から派生している[4]。このLittle Kernelは、Haikuが採用しているNewOSカーネル[5]の共同開発者の1人であるTravis Geiselbrecht[注釈 1]によって開発された。

Zirconは大部分はC++で、一部はアセンブリ言語で書かれている。少数のユーザーサービス、ドライバライブラリを持つカーネルから構成され、それらはすべて、システムのブートハードウェアとの通信、ユーザープロセスのロードに必要である[6]。Zirconが現在持っている機能としては、スレッドのハンドリング、仮想メモリプロセス間通信、オブジェクトの状態の変化の待機などがある[7]

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との類似点が確認できる程度という状況だった[8]

その後のArs Technicaによる検証は開発が順調なことを印象付けるものとなっており、何ひとつ機能しないということはなくなっていて、特にハードウェアのサポートが拡充されている。複数マウスポインタ操作に対応したことは予想外の改善点だったと説明されている[9]

歴史[編集]

  • 2016年08月15日 – Googleは新たなプロジェクトとしてFuchsiaをGitHub上で発表した[10]。このさい公式な告知はなく、ソースコードをメディアが精査してみたところ、このOSが「車載インフォテインメント、信号機デジタル時計などへの組み込みシステムから、スマートフォン、タブレットやPCまで」を含む幅広いデバイスで稼働できる能力があることを示唆していた。FuchsiaではLinuxカーネルではなくZircon (旧称: Magenta)[11] を採用する点がChrome OSやAndroidとは異なっていた[12][13]
  • 2017年
    • 05月 – 初期バージョンではコマンドラインシェルのみを備えていたが、新たにArmadilloと名付けられたカード型のグラフィカルユーザインタフェース (GUI) がFuchsiaに追加された[8]。このさいArs Technicaは「これは玩具でもなく、20%ルール[注釈 2]によるプロジェクトでもなく、誰にも顧みられることのない残骸置き場でもない」と開発者が証言した、との記事も掲載した。多くのメディアによって、このプロジェクトがAndroidと密接に関連しているように見受けられると指摘され、さらにAndroidプラットフォームにおける課題を解決する手段として[8]、FuchsiaがAndroidの「仕切り直し」[14]もしくは置き換え[15][16][17]を狙った取り組みなのかも知れない、などと臆測が巡らされた。
    • 09月 – それまでMagentaと呼ばれていたOSのコア部分をZirconに改名した[1]
    • 11月 – Swiftプログラミング言語の初期サポートが導入された[18]
  • 2018年01月 – GoogleはFuchsiaをPixelbookで動作させる手順のガイドを発表した[19][20]Ars Technicaはこの手順の追試に成功した[9]
  • 2019年06月28日(現地時間) – GoogleはFuchsia開発者向け公式Webサイトを公開したと報道された。
  • 2021年
    • 05月25日(現地時間) – 初代のGoogle Nest Hubを対象にFuchsiaのロールアウトが開始された[21][22]
    • 08月17日(現地時間) – 初代のGoogle Nest Hubを対象のファームウェアアップデートでFuchsiaが搭載されたと報じられた。

脚注[編集]

注釈[編集]

  1. ^ Be社員としてBeOSカーネルの開発を担当、その後DangerHiptopHPwebOS、GoogleでAndroidの開発に携わり、現在Fuchsiaのコア部分の開発を担当している。
  2. ^ 就業時間の20%を個人的な関心に基づく研究に割り当ててよいとするGoogleの社内ルール。

出典[編集]

  1. ^ a b “Google,IoT向けOS「Fuchsia OS」のコアを「Zircon」にリネーム”. gihyo.jp. (2017年9月14日). https://gihyo.jp/admin/clip/01/linux_dt/201709/14 2018年5月5日閲覧。 
  2. ^ Zircon” (英語). Fuchsia. 2020年12月9日閲覧。 “"Zircon is composed of a microkernel (source in /zircon/kernel)"”
  3. ^ Pragmatic” (英語). Fuchsia. 2020年12月9日閲覧。 “"Zircon is a pragmatic, message-passing kernel—not a microkernel"”
  4. ^ Sims, Gary (2016年8月17日). “What we learned from running Fuchsia, the mysterious new OS from Google”. Android Authority. 2017年5月9日閲覧。
  5. ^ Travis Geiselbrecht (Projects section)” (2016年10月24日). 2017年11月21日閲覧。
  6. ^ “An Early Look at Zircon, Google Fuchsia New Microkernel”. (2018年4月15日). https://www.infoq.com/news/2018/04/google-fuchsia-zircon-early-look 2018年5月20日閲覧. "Written in C++, Zircon is composed of a microkernel plus a set of userspace services, drivers, and libraries that are required to handle system boot, process launch, and other typical kernel tasks. Zircon syscalls are generally non-blocking, with the exception of wait_one, wait_many, port_wait and sleep." 
  7. ^ Overview” (英語). Fuchsia. 2020年6月18日閲覧。
  8. ^ a b c Amadeo, Ron (2017年5月8日). “Google’s “Fuchsia” smartphone OS dumps Linux, has a wild new UI”. Ars Technica. Condé Nast. 2017年5月9日閲覧。
  9. ^ a b Amadeo, Ron (2018年1月8日). “Google’s Fuchsia OS on the Pixelbook: It works! It actually works!”. Ars Technica. Condé Nast. 2018年1月22日閲覧。 “Right now, Google's built-from-scratch kernel and operating system will actually boot on the Pixelbook, and some things even work. The touchscreen, trackpad, and keyboard work and so do the USB ports. You can even plug in a mouse and get a second mouse cursor.”
  10. ^ “Google,ナゾの新OSプロジェクト「Fuchsia」をローンチ”. gihyo.jp. (2016年8月17日). https://gihyo.jp/admin/clip/01/linux_dt/201608/17 2018年5月5日閲覧。 
  11. ^ [zx] Magenta -> Zircon”. zircon - Git at Google (2017年9月12日). 2017年9月19日閲覧。
  12. ^ Etherington, Darrell (2016年8月15日). “Google’s mysterious new Fuchsia operating system could run on almost anything”. TechCrunch. AOL. 2016年10月5日閲覧。
  13. ^ Fingas, Jon (2016年8月13日). “Google's Fuchsia operating system runs on virtually anything”. Engadget. AOL. 2016年10月5日閲覧。
  14. ^ Fingas, Jon (2017年5月8日). “Google's mysterious Fuchsia OS looks like an Android re-do”. Engadget. AOL. 2017年5月9日閲覧。
  15. ^ Gartenberg, Chaim (2017年5月8日). “Google’s mysterious new Fuchsia OS has a UI now”. The Verge. Vox Media. 2017年5月9日閲覧。
  16. ^ Davenport, Corbin (2017年5月8日). “Google's "Fuchsia" operating system is taking shape with a new design”. Android Police. 2017年5月9日閲覧。
  17. ^ First Look at all new Fuchsia OS from Google”. IB Computing. IB Computing (2018年1月18日). 2018年1月18日閲覧。
  18. ^ Add Fuchsia OS support by zbowling · Pull Request #12955 · apple/swift · GitHub” (英語). GitHub (2017年11月15日). 2021年5月27日閲覧。
  19. ^ “Yes, Google Is Running Fuchsia On The Pixelbook: Calm Down” (英語). Chrome Unboxed - The Latest Chrome OS News. (2018年1月1日). https://chromeunboxed.com/news/fuchsia-pixelbook-install-google-developer 2018年1月3日閲覧。 
  20. ^ Contribute to docs development by creating an account on GitHub, Fuchsia, (2018-01-03), https://github.com/fuchsia-mirror/docs 2018年1月3日閲覧。 
  21. ^ Bradshaw, Kyle (2021年5月25日). “Google is releasing Fuchsia OS, starting w/ 1st-gen Nest Hub” (英語). 9to5Google. 2021年5月26日閲覧。
  22. ^ Googleの“第三のOS”「Fuchsia」、初代「Nest Hub」へ”. ITmedia NEWS. 2021年5月26日閲覧。

関連項目[編集]

外部リンク[編集]