Le processus de démarrage d'un système embarqué est similaire à celui d'un PC d'un point de vue général, mais légèrement différent d'un point de vue microscopique.
Voici le processus de démarrage d'un appareil Android :
-
PC-BIOS/BootMonitor, MBR et GRUB/LILO etc. sont tous combinés en un seul. Boot Strap Firmware
appelé Bootloader
. Son site init.S
initialise les piles, met à zéro le segment BSS et appelle _main() en main.c
. Le site main.c
initialise le matériel (horloges, carte, clavier, console) et crée des balises Linux qui, à leur tour, chargent l'image du noyau Linux en mémoire.
-
Le noyau Linux configure le système, charge les pilotes et commence à exécuter le premier processus. init
.
-
El init
Le processus implique la mise en place d'un système de fichiers (points de montage des fichiers). /sys
etc. sont créés à ce stade) et l'exécution de init.rc
.
-
Exécution de init.rc
: Il s'agit d'un script de démarrage qui utilise Syntaxe spécifique à Android . Zygot
dans init.rc fait apparaître Dalvik VM
et démarre le serveur du système.
Tout cela se produit avant l'affichage de l'animation de démarrage.
Pour plus de détails sur les processus, consultez cet article : http://www.androidenea.com/2009/06/Android-boot-process-from-power-on.html