Androidの仕組みを知る(1) - Android徹底解説---内部構造,移植,開発:ITpro(情報元のブックマーク数)

Android携帯のベース、Javaを使って開発って話。うむ。Eclipseでも作れるそうです。

Androidは携帯端末用として開発されているものの,適用範囲は携帯端末にとどまらない。Androidが現在対応しているCPUは英ARM社のARM系と米Intel社のx86系の2種類だが,Androidオープンソースとして公開されている。そのため,誰でも自由に他の機器に移植できる。ソフトウエアの構成や内部を独自に変更することも可能である。
アプリケーションの開発も自由だ。開発者は,AndroidのアプリケーションをJava言語で開発できる。標準でインストールされているアプリケーション(コア・アプリケーション)と,第3者が開発するアプリケーションとの区別はない。例えば,図1にある待ち受け画面アプリケーションのような標準ソフトも置き換えられる。
アプリケーションの開発には,オープンソース統合開発環境Eclipse」を利用できる。開発環境や開発を補助するAndroid用の「Eclipseプラグイン」も無償で提供されており,開発者は作業を軽減できる。

Androidの仕組みを知る(1) | 日経 xTECH(クロステック)

ケータイ電話ならではのメモリ管理節約術

Androidの各アプリケーションは,システム上の1プロセスとして起動される。通常のLinuxディストリビューションであれば,ソフトウエアの終了はプロセスの停止を意味する。しかし,Androidの場合はユーザーがアプリケーションを終了しても,プロセス自体はすぐには停止しない。
その理由は,一般的なPCとは違い,携帯端末では消費電力が問題になるからだ。プロセスの生成は一般的な処理に比べて,CPUをはじめとするコンピュータ・リソースの消費量が非常に大きい。ユーザーがアプリケーションを切り替えるたびに,プロセスの終了と生成を繰り返していては,バッテリの持続時間が短くなってしまう。
そのため,使われなくなったアプリケーションのプロセスも,すぐに終了せず,待機状態にしておく。もし,待機しているアプリケーションの起動が要求されたら,待機中のプロセスを利用し,プロセス生成のコストを低減するのである。

Androidの仕組みを知る(1)(2ページ目) | 日経 xTECH(クロステック)

Binderという重要なプロセスというかドライバの話。

「Binder」はプロセス間で通信する機能を提供するドライバだ(図3)。
Binderの役割を理解するために,まずAndroidアプリケーションの構造を説明しよう。Androidのアプリケーションは大きく分ければ,「アクティビティ」と「サービス」という2つの要素で構成されている。通常,一つのアプリケーションには,アクティビティとサービスの両方,あるいは一方だけが含まれている。
アクティビティは,一つの画面を持つプログラムだ。画面が表示されている間は実行中となるが,ユーザーが終了したり,電話の着信などの割り込みが発生して画面が消えたりすると,待機状態になる(詳しくは後述)。
一方,サービスは,画面を持たず常にバックグラウンド・プロセスとして動作するプログラムだ。システムに常駐し,他のアプリケーションからの要求に応じて処理を実行する“デーモン”プログラムに近い。

Androidの仕組みを知る(1)(3ページ目) | 日経 xTECH(クロステック)

screenshot