|
Arsitektur Android |
Sesuai gambar di atas, android mempunyai kernel linux, dan menggunakan android runtime dan application framework sendiri yang memungkinkan development dengan menggunakan java.
Kernel dan Dalvik Virtual Machine
Sejak versi 2.6.23, kernel Linux standar menggunakan Completely Fair Scheduler (CFS), yang menerapkan kerataan dalam waktu penggunaan CPU untuk task yang diberikan. Keseimbangan ini menjamin bahwa semua task akan mempunyai jatah CPU yang sama dan oleh karena itu setiap kali terjadi ketidak rataan telah ditemukan, algoritma tersebut akan melakukan penyeimbangan kembali task yang ada. Walaupun fairness dijamin, algoritma ini tidak menyediakan penjaminan sementara untuk task dan oleh karena itu Android juga tidak melakukan penjadwalan karena operasi penjadwalan diserahkan pada kernel Linux.
Android menggunakan Virtual Machine nya sendiri yang dinamakan Dalvik, yang dikembangkan dari scratch untuk device mobile dan mempertimbangkan optimasi memori, penghematan daya baterai, dan frekuensi CPU yang rendah. Dalvik ini mengandalkan kernel Linux sebagai fitur inti sistem operasi seperti manajemen memori dan penjadwalan yang dimiliki oleh kernel Linux dan karena itu juga mengakibatkan kekurangan yaitu tidak melakukan penjaminan sementara sebagai pertimbangan. Arsitektur android seperti yang digambarkan dalam gambar 1, terdiri atas 5 lapis: Applications, Application Framework, Libraries, Android Runtime, dan Kernel Linux. Pada lapis paling atas, lapis aplikasi menyediakan sekumpulan fungsi aplikasi yang secara umum tidak ditawarkan oleh mobile device lainnya.