Beranda · Menu · Menu 1 · Menu 2

Pembahasan Sistem Operasi pada Android


Analisis Boot Proses Pada OS Android

Platform mobile dan sistem embedded memiliki beberapa perbedaan jika dibandingkan dengan sistem desktop, perbedaan itu bisa dilihat dari cara start up dan boot awal kedua perangkat. Karena itu penulis akan mencoba membahas tahap boot awal dari sistem operasi android. 

1. Power on dan kode eksekusi Boot ROM. Saat daya pertama kali diaktifkan, CPU berada dalam keadaan belum melakukan inisialisasi. Saat itu clock internal belum diatur dan hanya tersedia memori RAM internal saja. Ketika pasokan listrik mulai stabil maka kode yang tertanam pada ASIC CPU mulai menjalankan eksekusi boot ROM.

Proses Power On 


Proses A.Kode boot ROM mendeteksi media boot menggunakan sistem registrasi lalu memetakan ke beberapa bagian fisik pada ASIC. Proses ini untuk menentukan di mana lokasi tahap awal dari boot loader.  

Proses B. Setelah urutan media booting didirikan, boot ROM akan mencoba untuk memuat tahap awal dari boot loader ke RAM internal. Setelah itu boot loader menjadi tempat penyimpanan kode ROM boot dalam melakukan eksekusi program. 

2. Proses Boot Loader. 
Boot loader adalah program khusus yang terpisah dari kernel Linux yang digunakan untuk membuat memori awal dan memuat kernel linux ke dalam RAM. Pada sistem desktop boot loader adalah program seperti GRUB, sedangkan pada linux uboot paling sering dipakai sebagai boot loader. Untuk melakukan proses booting para produsen perangkat android biasanya membuat boot loader milik meraka sendiri, membuat proses booting pada produk perangkat android berbeda-beda satu sama yang lain. Proses dan juga persyaratan pada boot loader kernel linux yang berjalan pada sistem ARM lebih lengkap dapat ditemukan dalam dokumen booting di /dokumentation/arm dalam inti kernel android.



Proses Bootloader 

Proses A. Tahap awal boot loader akan mendeteksi dan mengatur RAM eksternal  

Proses B. Setelah RAM eksternal telah disiapkan oleh boot loader maka sistem siap untuk menjalankan sesuatu proses yang lebih signifikan dimana tahap awal sistem akan memuat boot loader utama dan menempatkannya di RAM eksternal. 

Proses C. Tahap kedua boot loader akan menjalankan program penting pertamanya, dimana program ini berisi kode untuk mengatur sistem file, memori tambahan, dukungan jaringan dan juga hal-hal lain. Pada ponsel program ini juga bertanggung jawab untuk memuat kode pada modem CPU dan menyiapkan perlindungan memori standar dan pilihan keamanan.  

Proses D. Setelah program utama telah dilakukan maka boot loader akan mencoba mencari kernel linux untuk memulai proses boot. Proses ini akan memuat data dari media boot atau beberapa sumber lain tergantung pada konfigurasi sistem, dan ditempatkan ke dalam RAM. Proses ini juga akan mencoba menempatkan beberapa memori parameter boot kedalam kernel untuk dibaca oleh kernel ketika akan memulai suatu proses. 

Proses E. Setelah boot loader menyelesaikan tugasnya maka proses selanjutnya menuju ke kernel linux dimana kernel akan bertanggung jawab atas berjalannya suatu sistem dan melakukan beberapa rutinitas dekompresi.    

3. Kernel Linux  Kernel Linux dimulai dengan cara yang sama pada perangkat android seperti halnya pada sistem operasi lainnya. Proses ini akan mulai menyiapkan segala hal yang diperlukan oleh sistem untuk menjalankan suatu proses seperti inialisasi hardware, inisialisasi pengendali interupsi, mengatur proses awal memori, proses penjadwalan cache, dan juga beberapa proses lainnya yang dibutuhkan baik sistem maupun hardware. Untuk lebih jelasnya berikut gambaran dari proses kernel android.




Proses Kernel Android 


Proses A. Setelah unit manajemen memori dan cache telah diinisialisasi, sistem akan dapat menggunakan virtual memori dan memulai proses pembacaan data dari produk android. 

Proses B. Pada proses ini kernel akan berada dalam sistem root untuk menjalankan proses init yang letaknya di dalam sistem/core/init  dan menjalankannya sebagai proses user space. 

4.  Proses Init. 
Proses init adalah "induk" dari semua proses dalam sistem. Proses lain yang ada dalam sistem semua akan dijalankan melalui proses init atau melalui salah satu dari turunannya.

 Proses Init 

Proses A. Proses pada sistem android akan mencari file bernama init.rc. File ini berisi script proses layanan sistem yang menggambarkan sistem file dan parameter lain yang perlu diatur. Script init.rc biasanya ditempatkan dalam sistem/ core/ root.  

Proses B. Proses init akan mengurai script init dan meluncurkan proses layanan sistem yang diperlukan.   

5. Zygote & Dalvik  
ini diluncurkan oleh proses init dan pada dasarnya  hanya akan mulai melaksanakan dan menginisialisasi VM Dalvik. Proses boot Zigot pada dasarnya adalah proses start up dari VM setelah itu zigote menunggu perintah dari socket, misalnya proses activity manager service. Setiap kali muncul proses baru untuk suatu aplikasi maka socket ini berfungsi untuk menuliskan perintah,  perintah ini dibaca oleh proses zygote dan memanggil fork sehingga proses selanjutnya yang dijalankan oleh VM.




Proses Zygote & Dalvik 


6. Sistem Server 
Sistem server adalah komponen java pertama yang berjalan didalam sistem. Proses ini akan memulai menjalankan proses service yang berhubungan dengan  layanan standar android seperti halnya manajer telepon dan bluetooth. Start up dari setiap layanan sistem saat ini ditulis langsung ke metode zygote agar bisa terproses dalam sistem server. Berikut gambaran dari proses sistem server di perangkat android. 

Proses Sistem Server 

7.  Boot Selesai 
Setelah sistem server berjalan sempurna dan sistem boot telah selesai maka sistem server android akan mengirimkan suatu perintah ACTION_BOOT_COMPLETED ke pada sistem agar memulai proses layanan standar untuk pengguna android, contohnya membuat aplikasi berjalan setelah proses boot sesuai dengan apa yang telah di atur oleh user android itu sendiri. Jika proses ini telah selesai semua maka android akan memasuki mode GUI dan sistem operasi android siap untuk digunakan sebab sistem operas android telah menyajikan mode user interface kepada pengguna android seperti halnya dekstop di PC.  


Sumber:hadi-cpu.blogspot.com

Artikel keren lainnya:

Belum ada tanggapan untuk "Pembahasan Sistem Operasi pada Android"

Posting Komentar

Budayakan berkomentar yang sopan.