AndroidのJava環境を巡るGoogleの思惑――Java仮想マシンの独自開発でSunとの関係にひび?

 携帯電話向けソフトウェア・プラットフォーム「Android」を巡り、米国GoogleとSun Microsystemsの関係にひびが入る可能性が出てきた。その理由は、Androidに含まれるJava仮想マシン「Dalvik」にある。

 GoogleはAndroid用のJavaアプリケーション実行エンジンとして、標準ベースのJava Platform, Micro Edition(Java ME)を採用する代わりに、独自のJava仮想マシンとなるDalvikを開発した。これには技術的なメリットがあると思われるが、理由はそれだけではないようだ。

 Apacheラボの開発者でボード・メンバーのステファノ・マッツォッキ氏は、技術的メリット以外の理由として、Java MEの採用にかかわるSunとのライセンス問題を回避できることを挙げる。

 マッツォッキ氏によると、Java MEに独自の改変を加えるのであれば、Sunからライセンスを取得する必要があるという。Java MEへの変更の成果をオープンソース・コミュニティと共有すればJava MEをオープンソース・ライセンスの下で利用できるが、ほとんどの大手携帯電話メーカーはそうすることに消極的なのが実情だ。

 つまり、Googleとしては、Androidの採用メーカーにJava MEのライセンス取得を求めることにならないよう独自の仮想マシンを開発した、というのがマッツォッキ氏の見方だ。

 Dalvikの場合、JavaバイトコードをDalvikバイトコードに変換して実行するようになっている。そのため、「DalvikはJavaプラットフォームではないと言うこともできる」と、Dalvikに詳しいモバイル開発者のハリ・ゴティパティ氏はブログで述べている。

 はたして、Sunはこうした“やり方”を想定していたのだろうか。「想定していなかったと思う。非常に賢明なアプローチだと考えられる」とマッツォッキ氏は答えた。

 もっとも、Googleがトラブルに直面する可能性がないわけではない。GoogleがSunの知的財産を利用してDalvikを開発したのであれば、SunはGoogleを特許侵害で訴えるかもしれない。「Sunの対応が非常に見ものだ」とマッツォッキ氏は言う。

 Sunはオープンソースの熱心な推進企業である。それゆえ、同社がオープンソース・ソフトウェア・スタックを巡ってGoogleを提訴すれば、オープンソース・コミュニティの強い反発を買うことになりかねない。

 それでもマッツォッキ氏は、Googleの動きはSunのビジネス戦略を脅かすものだと指摘する。「Sunはモバイル市場を有望視しており、Java MEを採用する携帯電話メーカーから収益を得ようとしている。Googleの計画は、そうしたSunの収益機会を縮小させることになる」(マッツォッキ氏)

 これらの件について、Sunの担当者は直接コメントはしなかったが、同社幹部の公の発言を引き合いに出した。例えば、Sunの社長兼CEOであるジョナサン・シュワルツ氏は、Androidが発表された日のブログでGoogleに祝辞を述べている。

 注目されるのは、その中でシュワルツ氏がAndroidを「Java/Linuxプラットフォーム」と言及していたことだ。これに対し、Googleは AndroidについてJavaプラットフォームと呼ぶことを慎重に避けているように見える。AndroidのSDK(ソフトウェア開発キット)のことを、Javaを使ってアプリケーションを作成するためのツール・セットと説明しているのは、その一例だ。

 Sunの担当者は、Sunのソフトウェア担当エグゼクティブ・バイスプレジデントであるリッチ・グリーン氏が、サンフランシスコで先週開催された「Oracle OpenWorld」の中で、Androidについて語った発言にも言及した。

 グリーン氏は、「われわれはGoogleに歩み寄っている。したがって、Googleもわれわれに歩み寄って、ソフトウェアとAPIの互換性確保に取り組み、多彩なプラットフォームへのAndroidの展開を可能にしてくれるよう期待している」と同コンファレンスで述べている。

 グリーン氏によると、SunはGoogleと協力して、モバイル開発環境の乱立を防ぎたいと考えているという。前出のゴティパティ氏も指摘しているように、モバイル開発環境の乱立は携帯電話アプリケーションの開発者にとって深刻な問題となりつつあるからだ。ゴティパティ氏は、Java MEを使う場合でも携帯電話プラットフォームごとにアプリケーションに変更を加えなければならないと語る。

 「Androidの場合でも、非標準技術を使って別個のアプリケーションを新たに開発しなければならないだろう。私としては、Androidが主流になってJava MEを駆逐しないかぎり、この非標準技術をベースにアプリケーションを開発する気にはならない。Androidで構築された商用端末がまだ登場しておらず、この技術がどんなものかはまだ不明だが」(ゴティパティ氏)

 ゴティパティ氏は、GoogleがDalvikを開発したのはライセンス問題の回避にあるのではなく、技術的な理由からだと見ている。携帯電話メーカーが支払わなければならないJava MEのライセンス料は、ごくわずかにすぎないからだ。Googleが前もって頼んでいれば、SunはAndroidにJava MEを含めることを認め、ライセンス料を放棄していたはずだと同氏は考えている。

(ナンシー・ゴーリング/IDG News Service シアトル支局)

米国Google
http://www.google.com/
米国Sun Microsystems
http://www.sun.com/

提供:Computerworld.jp