0

I understand a good bit of the ARM system architecture. you have an ARM system on chip containing the CPU, GPU, peripherial devices, baseband processor and both CPU and Radio firmware. Supposedly the application OS is stored on the phone's internal flash memory chip and the bootloader ROM on the chipset firmware boots on top or before the app OS on flash module 0? Is this like a BIOS in a desktop PC? Or is it that Android itself is stored in this on-chip firmware and the Root disk or Home directory is flash module 0, and it works like a live image booting from a CD or ROM?

What is the first thing to load in a. Android phone/tablet? Where is the main OS stored and where is the recovery bootloader stored? What about the radio firmware for phones? When a phone boots, what is the animated splash screen and music tone played? Why does that flash video/animation always show the manuacturer logo screen, and then the Android OS video?

joseph
  • 117
  • 1
  • 1
  • 8
  • Your question is very broad and consists of several related questions. In general, you'll get better answers if you limit yourself to one question at a time, but I've done the best I can to cover the topic as a whole. – Dan Hulme Nov 20 '14 at 16:14

1 Answers1

2

Everything (the bootloader, the recovery, and the full system) is stored in the same flash storage, with different partitions for each. The bootloader has its own partition which also holds the kernel for the main system. The recovery has its own partition: it needs to be separate from the main system, else it would be no use for "recovering" or flashing a new OS. The Android system itself lives in the system partition. It doesn't really work like a PC at all.

The first thing to load is always the bootloader. This is responsible for starting fastboot mode (aka bootloader mode), or starting the recovery or main system. In the latter cases, it also loads the kernel and ramdisk that will be used, which are in the boot partition.

The boot animation comes from the system partition, and are displayed by Android proper. On some phones (such as most Samsung phones), the bootloader itself has a logo (with the manufacturer or device name), and this is written directly into the framebuffer as part of its initialization, very early in the boot process. The Android boot animation is much later, and is performed in parallel with the rest of the boot process, providing a visual indication that the phone hasn't hung.

Dan Hulme
  • 35,000
  • 17
  • 90
  • 155
  • The first sentence is wrong. Not everything is stored on the same flash, the boot ROM may reside on the SoC. Not everything on a flash chip is in a partition either. What we call the bootloader may actually consist of several parts. – jiggunjer Feb 12 '16 at 04:05
  • @jiggunjer I suppose everything's possible. On the phones I've worked on, the boot ROM itself is trivial and just goes straight to the main bootloader on its own partition. I'd love to hear examples of phones that don't even have a boot partition; feel free to add them to the answer directly if you think it'll improve it. – Dan Hulme Feb 12 '16 at 12:37