2章基本コンセプト
Androidとは何かがわかったところでその仕組みを見ていくことにしよう。Androidの構成要素の中でもLinuxカーネル、SQLデータベースなどはすでにご存知かもしれない。一方アプリのライフサイクルにおけるAndroidの考え方などはなじみがないだろう。
行儀よく動作するAndroidアプリを書くためには、基本コンセプトをよく理解しておく必要がある。本書でたったひとつの章だけ読むとすれば、本章を読むべきだ。
2.1 全体像
最初はシステム全体のアーキテクチャ、つまりAndroidオープンソースソフトウェアスタックを構成している主要なレイヤーとコンポーネントを見ていこう。図2-1は上空から航空写真のように地上のAndroidを見下ろしたところを示したものだ。これをじっくり勉強しよう。テストは明日だ。
各レイヤーはその下のレイヤーが提供するサービスを利用している。以下の節では下からAndroidの各レイヤーを見ていく。
2.1.1 Linuxカーネル
Androidは安定した環境として定評のある基礎、すなわちLinuxカーネルのもとで動作するように作られている。LinuxはLinus Torvaldsによって1991年に開発されたOSで、今では腕時計からスーパーコンピュータに至るまで、ありとあらゆるものに搭載されている。LinuxがAndroidに対してハードウェア抽象化レイヤーを提供しているので、将来にわたってAndroidはさまざまなプラットフォームに移植できるはずだ。
内部的にAndroidはメモリ管理、プロセス管理、ネットワーキング、その他のシステムサービスの実行のためにLinuxを使っている。AndroidユーザーからはLinuxは見えないし、あなたの作るプログラムも直接的なLinux呼び出しを行うことはない。しかし開発者としてはLinuxがあることを意識する必要がある。 ...
Get 初めてのAndroid 第4版 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.