Sunday, June 8, 2014

Anatomi Android

Dalam paket sistem operasi Android tediri dari beberapa unsur, secara sederhana arsitektur  Android merupakan sebuah kernel Linux dan sekumpulan pustaka C / C++ dalam suatu framework  yang menyediakan dan mengatur alur proses aplikasi. Berikut anatomi android secara lebih jauh:
a.     Linux Kernel
Android dibangun di atas kernel Linux 2.6. Namun secara keseluruhan Androidbukanlah linux, karena dalam Android tidak terdapat paket standar yang dimilikioleh linux lainnya. Kernel linux menyediakan driver layar,kamera, keypad, WiFi, Flash Memory, audio, dan IPC ( InterprocessCommunication) untuk mengatur aplikasi dan lubang keamanan.
b.     Libraries
Android menggunakan beberapa paket pustaka yang terdapat pada C/C++ dengan standar Berkeley Software Distribution (BSD) hanya setengah dari yang aslinyauntuk tertanam pada kernel Linux. Beberapa pustaka diantaranya :
i)      Media Library untuk memutar dan merekam berbagai macam format audiodan video.
ii)    Surface Manager untuk mengatur hak akses layer dari berbagai aplikasi.
iii)  Graphic Library termasuk didalamnya SGL dan OpenGL, untuk tampilan2D dan 3D.
iv)   SQLite untuk mengatur relasi database yang digunakan pada aplikasi.
v)    SSl dan WebKit untuk browser dan keamanan internet.
c.     Android Runtime
Android Runtime merupakan mesin virtual yang membuat aplikasi Android menjadi lebih tangguh denganpaket pustaka yang telah ada. Dalam Android Runtime terdapat 2 bagian utama,diantaranya :
d.     Pustaka Inti
Android dikembangkan melalui bahasa pemrograman Java, tapi Android Runtime bukanlah mesin virtual Java. Pustaka inti Android menyediakan hampir semua fungsi yang terdapat pada pustaka Java serta beberapa pustaka khusus Android.
e.     Mesin Virtual Dalvik
Dalvik merupakan sebuah mesin virtual yang dikembangkan oleh Dan Bornstein yang terinspirasi dari nama sebuah perkampungan yang berada di Iceland. Dalvik hanyalah interpreter mesin virtual yang mengeksekusi file dalam format Dalvik Executable (*.dex).
f.      Application Framework
Kerangka aplikasi menyediakan kelas-kelas yang dapat digunakan untuk mengembangkan aplikasi Android. Selain itu, juga menyediakan abstraksi generik untuk mengakses perangkat, serta mengatur tampilan user interface dan sumberdaya aplikasi. Bagian terpenting dalam kerangka aplikasi Android adalah sebagai berikut :
g.     Activity Manager
berfungsi untuk mengontrol siklus hidup aplikasi danmenjaga keadaan “Backstack untuk navigasi penggunaan.
h.     Content Providers
berfungsi untuk merangkum data yang memungkinkan digunakan oleh aplikasi lainnya, seperti daftar nama.
i.      Resource Manager
untuk mengatur sumber daya yang ada dalam program. Serta menyediakan akses sumber daya diluar kode program,seperti karakter, grafik, dan file layout.
j.      Location Manager
berfungsi untuk memberikan informasi detail mengenai lokasi perangkat Android berada.
k.     Notification Manager
mencakup berbagai macam peringatan seperti, pesan masuk, janji, dan lain sebagainya yang akan ditampilkan pada status bar.
l.      Application Layer

Puncak dari diagram arsitektur Android adalah lapisan aplikasi dan widget . Lapisan aplikasi merupakan lapisan yang paling tampak pada pengguna ketika menjalankan program. Pengguna hanya akan melihat program ketika digunakan tanpa mengetahui proses yang terjadi dibalik lapisan aplikasi. Lapisan ini berjalan dalam Android runtime dengan menggunakan kelas dan service yang tersedia pada framework aplikasi.

No comments:

Post a Comment