5種類のコンポーネントで構成されるAndroidのアーキテクチャ
5種類のコンポーネントで構成されるAndroidのアーキテクチャ
[画像のクリックで拡大表示]

 米グーグルが携帯電話機向けソフトウエア基盤「Andorid」のSDK(ソフトウエア開発キット)提供と共に公開した情報によると、Andoridは「Linuxカーネル」「ライブラリ」「ランタイム」「アプリケーション・フレームワーク」「アプリケーション」の5つのコンポーネントで構成される。

 カーネルはLinuxバージョン2.6。その上に、ネイティブのライブラリと、アプリケーション・ソフトウエアの実行環境であるランタイムが位置する。

 ライブラリ中には、オープンソースのWebブラウザ・エンジン「WebKit」がある。これは、米アップルのiPhoneも採用しているものである。このほか、標準C言語ライブラリである「libc」,動画・静止画を処理するメディア・ライブラリ,データベース管理システム「SQLite」などがある。メディア・ライブラリが対応するフォーマットは、MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF。

 メモリーやCPUなどリソースが限られた端末を対象とするランタイムの仮想マシン「Dalvik仮想マシン」は自ら開発したもよう。アプリケーション・ソフトウエアの記述言語はJavaであり、独自のバイナリ・ファイル(Dalvik Executable(.dex)フォーマット)に変換する。

 ランタイムの上に位置するのがアプリケーション・フレームワークで、アプリケーション・ソフトウエアを開発しやすくする。この中にはユーザー・インタフェースやアプリケーション間連携用のコンポーネントが含まれる。