twitter icon   twitter icon   rss icon

Linux.com Japan

Home ニュース Linux.com Exclusive 完全にフリーなAndroid ROM: ReplicantがJelly Beanに対応

完全にフリーなAndroid ROM: ReplicantがJelly Beanに対応

原文へのリンクはこちらです。

オープン ソース Android ROM をビルドする Replicant プロジェクトは、初めて Android 4.2 (“Jelly Bean”) バージョンをリリースすることにより、大きな節目を迎えました。Replicant 4.2 では Samsung Galaxy Note 2 のサポートが加わり、セキュリティなどの機能強化も行われています。Replicant は、SHR モバイルLinux OS プロジェクト FairphoneNeo900 などのハードウェア プロジェクトやソフトウェア プロジェクトをはじめとするよりオープンなスマートフォンを開発しようとする大きなムーブメントの一部です。

Replicant logo

共同創始者の Denis Carikli と 4 年間一緒にプロジェクトを運営してきた Replicant 開発者の  Paul Kocialkowski は、Replicant を「オープン ソース」というよりはむしろ「フリー ソフトウェア」と表現することを好みます。ディストリビューションは CyanogenMod 10.1.3 ベースであり、他の Android ROM 同様 Android Open Source Project (AOSP) がリリースしたコードに基づいています。しかし、これらのAndroid の変異型はどれをとってみても完全にオープン ソースといえるものではない、と Kocialkowski は電子メールでのインタビューで言っています。

「ほとんどのコミュニティ版 Android は HAL (Hardware Abstraction Layers) に対応して一部プロプライエタリなコンポーネントを伴って出荷されています」と Kocialkowski は説明しています。「Replicant は完全フリーの Android でプロプライエタリなものを伴っていません。私たちはフリーではないソフトウェアを、私たちが自ら開発したり、既存のコードを改造したりしたフリーの代替品と入れ替えます。」

多くの人にとっては、ベンダーのスキン (外観表示) やブロートウェア (余分なオマケソフト) がない基本ビルドだけのよりオープンなスマートフォンがあれば十分なのですが、Replicant  は、例えるなら菜食主義者や魚菜主義者の Android ROM の世界において未加工品だけを食べる完全菜食主義者のようなものなのです。ソフトウェアをフリーにするには、ほとんどの Replicant デバイスで見られるように 3D グラフィックス処理の高速化、GPS 機能、あるいは多くの場合カメラ機能を欠くなど、犠牲を伴います。

Replicant 4.2 は 11種のデバイスをサポートしており、Replicant 2.2 と 2.3 は Nexus One、HTC Dream/Magic 、そして OpenMoko を指向した Goldelico GTA0.4 をサポートしています。他の多くのデバイスは Samsung Galaxy や Nexus のスマートフォンやタブレットです。

機能性はデバイスにより異なります。 どのデバイスも 3D グラフィック処理の高速化はサポートしておらず、「古いモデルの一部は遅い」という注意書きを伴った 2D グラフィックとなっています。どれもNFC (Near Field Communication) 通信のサポートがありません。また、位置情報のサポートは、AGPS でなく GPS を利用している Nexus One と、さらに古い HTC Dream/Magic フォンだけが提供しています。カメラをサポートをしているのは半数以下、一部は背面カメラだけのサポートです。

Replicant 4.2 バージョンの 9 デバイスは、すべて音声、電話機能、モバイル データ、およびセンサーをサポートしています。加えて、Replicant はシステムだけを入れ替えるため、WiFi、Bluetooth、モデム ファームウェアなど外付けのプロプライエタリ コンポーネントは、システムから分離していると判断されれば、そのままスマートフォンに残されます。Replicant は、Google Play にリンクする代わりに、フリーのオープン ソース Android アプリを集めた F-Droid を利用しています。

セキュリティの強化

Replicant 4.2 はいくつかの点でセキュリティが改善され、NSA や企業の監視を制限することを目指しています。デバッグには「ユーザー デバッグ」アプローチを採用し、システム アプリケーションは Replicant が証明書付きで提供する特別なプライベート キーで署名されています。すべての Replicant リリースは Replicant の GPG リリース キーで署名されています。

「Replicant を世に出回る最もセキュアなモバイル OSにするつもりはありませんでしたが、現状として、プロプライエタリ OS よりは優れています」と Kocialkowski は言います。「プロプライエタリ OS はユーザーにコントロールさせるのではなく、逆にユーザーをコントロールするために設計されています。完全にフリーな OS は、電話がひそかに悪意のある動作をしたり、スパイをするためのリモート アクセスを提供したりしないことをユーザーに保証します。ユーザー デバッグは、デバッグやルート アクセスに関してよりセキュアなやり方を可能にします。ホスト コンピューターからデバイス内のシェルにアクセスする前に、ユーザーはそのコンピューターの指紋を認証しなければなりません。さらにその後、シェルは直接ルートとしてではなく、非特権ユーザーとして動きます。」

 

Paul Kocialkowski との質疑応答

以下は完全フリーのモバイル OS を作り上げる際の困難な挑戦について説明した Kocialkowski のインタビューです。

新しい Android スマートフォンのサポートでおもに障害となっていることは何ですか?

Kocialkowski: もっと多くのデバイスをサポートしたいのですが、開発者の数も時間も足りません。しかし Replicant と相性の良いスマートフォンはたくさんあります。私たちのプロジェクトは寄付を受け付けていて、そのほとんどを開発者に新しいデバイスを買うために費やしています。Free Software Foundation がそれらの資金調達を手伝ってくれました。

置換不可能な数値署名を使用していて私たちのカーネルを作ることができないデバイスには、当然移植しません。コミュニティ OS を安全で簡単にインストールできるデバイスを選びます。例えば、Nexus 4 にはあまりにもたくさんの付加物とファームウェアを要します。私たちはまた、モデムがしっかりと分離しているデバイスを選びます。というのは、独自のリモート コントロールが可能なプロプライエタリ OS で動作するモデムは、デバイスの重要なコンポーネントにアクセスすることがあるからです。

Android 4.0 から 4.2 に移行するにあたって課題となったことは何ですか?

Kocialkowski: 新しいバージョンの Android に移行するたびに一番大きな課題となるのがグラフィックです。Android は OpenGL とグラフィックの高速化に大きく依存していますが、Replicant にはありません。私たちはソフトウェアだけで実現されたグラフィックに頼っていますが、速度がかなり遅いのが実情です。古いデバイスは追いつけず、使用に耐える速度ではない時があります。また、新しいデバイスはスクリーンの解像度がどんどん高くなっているのが問題です。

私たちはソフトウェア グラフィックの代替品として Mesa に着目しましたが、アセンブリ最適化された Android 代替品の EGL の実装が完全ではないものの、より良く機能することが分かりました。最初の Replicant 4.2 の画像には EGL を使っていますが、一部のデバイスは以前よりも遅いため、性能を上げる方法を探しています。

Replicant は主として Samsung Exynos ベースの製品をサポートしています。Tegra や Snapdragon といった他のプロセッサにおける障害は何ですか?

Kocialkowski: 私たちは Replicant を Tegra 2 タブレットに移植しようとしたのですが、使用するには速度が遅すぎました。おそらく NEON ARM の命令セットを欠いていたからでしょう。より新しいバージョンのものは NEON を搭載しており、Replicant に合うかもしれませんが、Tegra 製品はフリーなソフトウェアにとって扱いやすいものではなく、むしろ他のプラットフォームの方がかなり扱いやすいと言えるでしょう。

Snapdragon の Adreno GPU は Mesa に統合されている Freedreno を実行することができます。しかし、その他の部分に関しては Qualcomm の SoC はフリーなソフトウェアにとって良い候補とは言えません。

Samsung の Exynos と Allwinner SoC はフリーなソフトウェアにとって相性がよいようです。これらは Lima のフリー グラフィック ドライバー プロジェクトがターゲットとしている ARM Mali GPU を使用しています。しかし Lima は現時点で Freedreno ほど開発が進んでおらず、まだ Replicant が利用することはできません。他のプラットフォーム、特に PowerVR を使用しているものは、すぐにはフリー ソフトウェアのサポートは受けないでしょう。

オープンソース GPS の動きはありますか?

Kocialkowski: まだ Replicant が GPS をサポートしていないのは不運としか言いようがありません。NMEA のようなよく知られている GPS プロトコルが存在する一方で、現在サポートされているデバイスの中の GPS チップは、あまり知られていないうえにドキュメントも存在しないプロトコルを使用しているため、私たちは今のところ理解できず、実装できていません。数多くの GPS  プロトコルのフリー ソフトウェア実装は GPSD に存在するので、GPS が取り立てて絶望的な状況というわけではありません。

さまざまな新しいモバイル Linux OS がありますが、プロプライエタリ コンポーネントの問題にどのように対処すると思いますか?

Kocialkowski: Firefox OS、Ubuntu Touch、Open WebOS、Sailfish のような OSは Android 同様すべてプロプライエタリ コンポーネントに依存しているため、新たな進歩を期待することはできせん。ほとんどのものは、違ったやり方でフリーだった Android の一部を書き換えているのですが、自由 (freedom) という意味では Android と大差ありません。Android は成熟しており、巨大な開発者 コミュニティとサポート デバイスを持っています。

iOS のようなプロプライエタリ システムに比べ、Android はかなり改良が進んでいます。完全にフリーなソフトウェア プロジェクトではありませんが、フリーなシステムを構築することが可能です。一方で iOS はそのようなことはまったくありません。Android がフリー モバイル OS に貢献しているのは明らかな事実です。


Linux Foundationについて

Linux Foundation はLinux の普及,保護,標準化を進めるためにオープンソース コミュニティに資源とサービスを提供しています

 

The Linux Foundation Japan

サイトマップ

問い合わせ先

サイトに関するお問い合わせはこちらまで

Linux Foundation Japan

Linux Foundation

Linux Training

提案、要望

Linux.com JAPANでは広く皆様の提案、要望、投稿を受け付ける予定です。

乞うご期待!