Arsitektur Android

Android dibangun dengan menggunakan asas object oriented, dimana elemen-elemen penyusun sistem operasinya berupa objek yang dapat kita gunakan kembali/reusable. Agar bisa membuat aplikasi dengan baik, tentunya kita harus mengetahui arsitektur OS Android beserta elemen elemennya.
Gambar dibawah merupakan skema pembagian elemen pada arsitektur Android. Secara garis besar arsitektur android terdiri dari empat layer komponen, yaitu:
Skema Arsitektur Android
Layer Applications dan Widget
Inilah layer pertama pada OS Android, biasa dinamakan layer Applications dan Widget. Layer ini merupakan layer yang berhubungan dengan aplikasi-aplikasi inti yang berjalan pada Android OS.  Seperti klien email, program SMS, kalender, browser, peta, kontak, dan lain-lain. Semua aplikasi ini dibuat dengan menggunakan bahasa Java. Apabila kalian membuat aplikasi, maka aplikasi itu ada di layer ini.
Layer Applications Framework
Applications Framework merupakan layer dimana para pembuat aplikasi menggunakan komponen-komponen yang ada di sini untuk membuat aplikasi mereka. Beberapa contoh komponen yang termasuk di dalam Applications Framework adalah sebagai berikut:
  1. Views
  2. Content Provider
  3. Resource Manager
  4. Notification Manager
  5. Activity Manager
Layer Libraries
Libraries merupakan layer tempat fitur-fitur android berada. Pada umumnya libraries diakses untuk menjalankan aplikasi. Beberapa library yang terdapat pada android diantaranya adalahlibraries Media untuk memutar media video atau audio, libraries untuk menjalankan tampilan,libraries Graphic, libraries SQLite untuk dukungan database, dan masih banyak library lainnya.
Android RunTime
Android RunTime merupakan layer yang membuat aplikasi android bisa dijalankan. Android RunTime dibagi menjadi dua bagian yaitu:
a) Core Libraries : berfungsi untuk menerjemahkan bahasa Java/C
b) Dalvik Virtual Machine : sebuah mesin virtual berbasis register yang dioptimalkan untuk menjalankan fungsi-fungsi pada Android secara efisien.
Linux Kernel
Linux Kernel merupakan layer tempat keberadaan inti dari operating system android. Layer ini berisi file-file system yang mengatur system processing, memory, resource, drivers, dan sistem android lainnya. Inilah yang membuat file sistem pada Android mirip dengan file sistem pada sistem operasi berbasis Linux. Kernel yang digunakan adalah kernel Linux versi 2.6, dan versi 3.x pada Android versi 4.0 ke atas. Kernel ini berbasis monolithic.
Itulah sdikit gambaran tentang Android arsitektur. Lantas apa yang dimaksud dengan reusabledi sini? Reusable berarti komponen-komponen yang ada pada aplikasi Android bisa kita pakai ketika kita membutuhkannya. Khususnya komponen-komponen pada layer pertama dan kedua. Misalnya kita ingin membuat sebuah web browser sederhana, maka kita hanya perlu menginstanstiasi kelas WebKit browser yang berfungsi untuk menampilkan web page. Semoga berguna :)
source : http://www.twoh.co/2012/09/mengenal-arsitektur-sistem-operasi-android/