Sunday, December 2, 2012

Mengenal Android Lebih Dalam

Dalam pembahasan sebelumnya kita sudah tau, Android pada dasarnya adalah sistem operasi berbasiskan kernel linux. Nah, setelah itu apa yang terjadi di atas kernel itu? belum aku post kan :D

Sebelum kita masuk lebih dalam, lebih baik kita mengenal hirarki dalam sistem operasi android dahulu.

  1. Kernel Linux
    Kernel Linux di sini berfungsi untuk inti sistem (core) dari semua proses yang diolah perangkat lunak, dan menghubungkannya ke perangkat lunak dengan mekanisme yang disebut abstraksi perangkat keras, hal ini sudah di bahas di post sebelumnya tentang "Jantung Android". Di dalam kernel ini terdapat banyak driver untuk perangkat keras. File kernel ini tidak sendirian, dia dibantu oleh sebuah ramdisk yang berisi script untuk menginisialisasi sistem. Pada Samsung Galaxy Young, berada pada device block /dev/bml7.
  2. Library
    Di atas kernel linux terdapat library. File-file library biasanya terletak di /system/lib, file library ini bertugas membantu kernel untuk melakukan beberapa hal seperti manajemen database, menangani rendering video, menterjemahkan file-file media seperti audio, gambar dan beberapa fungsi lain.
  3. Android Runtime
    Di sebelah library terdapat android runtime, android runtime terdiri dari library inti dan dalvik virtual machine. Bahasa aplikasi android yang kita gunakan sebenarnya adalah menggunakan bahasa pemrograman java, jadi perlu sebuah runtime untuk menjalankannya. Dalvik Virtual Machine yang menjembatani antara aplikasi dengan kernel.
  4. Application Framework
    Framework aplikasi berfungsi untuk mengatur aplikasi yang berjalan di atasnya. Framework ini berbeda di setiap versi android. Kita bisa membuat aplikasi yang sesuai dengan menggunakan Android SDK (Software Development Kit). Untuk gingerbread framework ini berada pada /system/framework/.
  5. Application
    Di atas framework terdapat lapisan aplikasi, lapisan aplikasi inilah yang paling sering digunakan oleh user, mulai dari aplikasi telepon, internet, sampai pemutar video. Aplikasi-aplikasi tersebut menggunakan ekstensi .apk (android package). apk sebenarnya adalah sekumpulan file yang terkompresi menggunakan zip yang sudah di-sign. dalam apk terdapat file classes.dex (file ini yang bisa di eksekusi oleh DalvikVM) dan file xml (untuk layoutnya). Aplikasi ini bisa kita modifikasi, nanti coba kita bahas di posting berikutnya :).
Untuk executable binary termasuk juga beberapa file binary yang terletak di /system/bin atau /system/xbin. menggunakan file-permissions untuk aksesnya seperti di sistem operasi linux lainnya. Beberapa fungsi dasar seperti copy, move, rename dikendalikan dengan sebuah file binary, yaitu busybox / toolbox. Busybox lebih lengkap daripada toolbox. Busybox bisa di install setelah kita melakukan proses rooting, yaitu menerobos hak akses penuh ke sistem (seperti 'sudo' di ubuntu). Klik di sini untuk mendownload busybox dari PlayStore, atau busybox yang saya compile sendiri, untuk prosesor armv6l, flash menggunakan ClockWorkMod recovery :).

Itu sekilas tentang 'jeroan' android, nanti coba kita kupas satu persatu :D

<eof>
alfiyan

0 komentar:

Post a Comment