« RubyKaigi2010を前に、「RubyKaigi2009で見たRubyコミュニティの悩み、価値観、変化」を記す | Main | Androidアプリで100億円を売り上げるとぶちあげるNECビッグローブ »

Androidは、単なるJavaクローンではない

AndroidをめぐるOracleの対Google訴訟(関連エントリ)に関連して、言っておくべきことがある。

Oracleは、Androidが同社が保有するJavaプラットフォームに関連する特許と著作権を侵害している、と主張した。このことから、AndroidはJavaの「パクリ」であるかのように認識している読者がいるかもしれない。米国のニュースサイトの記事でも、「Androidはクリーンルーム実装だから云々」といった論調がある。「AndroidはJavaのクローンである」との認識があるのだろう(注記あり)。

技術的な立場からは、上記の認識は正しくないと考えられる。Android上では、Javaプログラミング言語によるアプリを開発できる。しかしAndroidは、Javaプラットフォームの単なるクローンではない。Dalvik VMは、新たなアーキテクチャに基づき再構築した新たなプラットフォームと見た方が実態に近い

例えばJRuby開発者Charles Nutter氏のBlogの追記では、Androidコア・ライブラリ開発者Bob Lee氏による指摘として「Dalvik VMの設計は純粋に技術的な理由によるもので、知的所有権を避ける意図はない」こと、「Androidはプロセス分離によるサンドボックス・モデルを採用しており、これはJavaのセキュリティ・モデルとは異なる」ことが記されている(関連エントリ)。

Androidの軸となるDalvik VMは、Linuxのプロセス・モデルを巧みに利用して、Androidの良い特徴を導き出している。例えば各アプリは独立したプロセスとして動作し、使っていないアプリは、プロセスごとkillされる。この仕組みにより、迅速で確実なメモリ解放が行われる。これは、OS独立を是とするJavaプラットフォームの発想とは異なる。より詳しくは、Twitterで専門家から教えていただいた記録が残っているので、興味がある方は参照されたい(その1その2)。

技術的な観点からは、Androidの中核であるDalvik VMが、Javaのクローンであるとは言い難いのである。単に中間コードの形式が違うというだけでなく。

もちろん、技術者の意見と法廷の見解は往々にして乖離する。だから、この訴訟の行方は注意して見守らなくてはならない。

関連リンク
JRuby開発者Charles NutterがOracleの対Google訴訟を考察、「心配するな。特許は大した内容じゃないし、OracleにはAndroidを潰す動機はない」
togetter: Androidアプリの内部動作に関する情報(1)
togetter: Androidアプリの内部動作に関する情報(2)

注記:
なお、Androidでは、Java API相当のフレームワークを提供するため、オープンソースのApache Harmonyプロジェクトの成果物を利用している。開発主体がGoogleとは異なるため、Apache Harmonyは今回の訴訟のターゲットではないと考えられる。主たる論点は「Dalvik VMがJavaプラットフォームの特許と著作権を侵害している」という主張が認められるか否か、になるだろう。

|

« RubyKaigi2010を前に、「RubyKaigi2009で見たRubyコミュニティの悩み、価値観、変化」を記す | Main | Androidアプリで100億円を売り上げるとぶちあげるNECビッグローブ »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack


Listed below are links to weblogs that reference Androidは、単なるJavaクローンではない:

« RubyKaigi2010を前に、「RubyKaigi2009で見たRubyコミュニティの悩み、価値観、変化」を記す | Main | Androidアプリで100億円を売り上げるとぶちあげるNECビッグローブ »