« HelloWorldのソースコードについて考える 続き | トップページ | チュートリアルに挑戦 »

2007年11月27日 (火)

Androidの構成

 Googleの発表した携帯向けオープンプラットフォームAndroidですが、Google様がやることだし、携帯向けだし、何かすごい技術でゼロから作りまくったのか?なんて思えますが実際は、既にあるオープンソースの優秀なソフトウェアを組み合わせてAndroidは実現されてるらしいです。

 ゼロからやるよりも優秀なオープンソースを使う方が、ノウハウも蓄積されているだろうし、何より多くのプログラマーに取っては見慣れたものなので参入しやすいのでは無いでしょうか?

 AndroidのアーキテクチャについてはWhat is Android?日本語版 )に詳しく書かれています。また、太田一樹。さんのサイトでAndroidの構成について書かれています。

 Androidの構成について詳細に把握しようとすると私のような素人にはわかりにくいので、素人なりにプログラミングに必要であるだろうと言う部分のみを取り出して、Androidの構成について考えてみました。

 色々調べて、触ってみた感触だとこんな感じです。

Kousei

 ハードウェア上でqemuが動作、その上でlinuxが動作し、android本体がlinuxのアプリケーションとして動作する。そして、開発者はandroidの提供するAPIを使用できます。一つづつ簡単に見ていくと

●ハードウェア
 これはそのままハードです。携帯端末になりますが、動作するのはeqmuのため実は携帯端末に限らない?実際、テレビにもAndroid? なんて話もあるので将来的にはありとあらゆる機械にAndroidが搭載されていくのでしょうか?

●qemu
 qemuと言ってもqemuそのものでは無く、太田一樹。さんのサイトによるとqemuベースで追加されたコードは1万行ほどらしいです。eqmu自体は、VMwareやVirtualPCと同じPCエミュレーターですが、無償且つ、今回AndroidでサポートするARM以外にも一般的なCPU全般手広くサポートされています。

●Linux
 qemu上で動作しています。Androidエミュ上でCプログラムを動かしてみる で実際にログインしてCで書いたプログラムを動かしてみました。Gimiteさん はRubyまで動かしてました。

●Android本体
 Apache Harmony Java VMに少しだけ手を加えたものらしいです。Android本体はJDKと同じようなものでjavaのいろんなサービスを提供するバーチャルマシンだと理解しています。(*注意 素人の浅はかな理解です!)

●Android API
 android.で始まるクラスの集まりです。Googleが携帯用OSを無償配布によると…

50 :デフォルトの名無しさん:2007/11/13(火) 15:22:57
独自部分は、
 
android
android.app
android.content
android.database
android.database.sqlite
android.graphics
android.graphics.drawable
android.graphics.glutils
android.hardware
android.location
android.media
android.net
android.opengl
android.os
android.provider
android.sax
android.speech
android.speech.recognition
android.telephony
android.telephony.gsm    
android.text
android.text.method
android.text.style
android.text.util
android.util
android.view
android.view.animation
android.webkit
android.widget
com.google.android
com.google.android.maps
com.google.android.xmppService
 
だけだね。
そしてやっぱりgoogleサービスが入っている。
 
後はjava,javax, junit, org.apache,
org.bluez, org.json, org.w3m, org.xmlと有名どころのみ。
 
こりゃ、プログラマー集めやすいね。
 
 
とのこと。素人の私でもjava,javax,org.apacheあたりは知ってるのでjavaのプロに取ってはもう当たり前のパッケージ群なんでしょう…。

 以上、素人の脳内Android構成でした。

正確な情報は、What is Android?日本語版 )や太田一樹。さんのサイトを参考にして下さい。

|

« HelloWorldのソースコードについて考える 続き | トップページ | チュートリアルに挑戦 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/478154/9117268

この記事へのトラックバック一覧です: Androidの構成:

« HelloWorldのソースコードについて考える 続き | トップページ | チュートリアルに挑戦 »