Thursday, May 28, 2015

Can somebody explain the boot process of an Android device?



From the user's perspective when switch on the phone, I see two boot animations in my LG P500 running CM10. The first animation is from LG and the second animation is from CM10. Then it settles in with a locked screen ready for my input.


Can someone knowledgeable (and kind) enough explain the what happens behind the scene (screen) during a boot process when an android device is switched on? It will be helpful if the answers can help a non geek to understand various process and jargons (like, fastboot, bootloader, recovery, if applicable etc) regarding boot sequence.



Answer



You will find a good explanation including graphics to visualize what's going on in the article The Android boot process from power on. Basically, the steps are as follows:



  1. Execute Boot ROM code. This is stored in a hardware-specific area and keeps information on where to find the first stage of the boot loader, which is then loaded into RAM. You can compare the Boot ROM with the BIOS in your desktop PC.

  2. Execute first stage of the boot loader. On desktop computers, this can be compared with the boot menu, e.g. Grub/LiLo on Linux. It sets up some basic stuff, and then turns control to the...

  3. Linux kernel, which will, together with the init process, initialize the base system, e.g. caches, file systems, etc., and then calls...

  4. Zygote, which initializes the Dalvik VM, and then starts the...

  5. System server. Now we are in the Android-system, and set up all Android-specific services, like e.g. telephony manager and bluetooth. Finally comes:


  6. Boot completed -- this event will be broadcast, so apps having registered listeners on this will be started.


To help you visualize this, here's the last image from the mentioned site:


Android Boot Process


No comments:

Post a Comment

samsung galaxy s 2 - Cannot restore Kies backup after firmware upgrade

I backed up my Samsung Galaxy S2 on Kies before updating to Ice Cream Sandwich. After the upgrade I tried to restore, but the restore fails ...