3 votes

Comment interrompre la séquence de démarrage d'Android pour le forcer à démarrer uniquement sur le noyau Linux ?

J'essaie de faire quelques tests de performance de bas niveau liés aux cœurs du processeur de l'appareil par le biais d'adb qui, je pense, est affecté par les services d'arrière-plan Android et les trucs du système.

Comme je le sais, les étapes de la séquence de démarrage d'Android sont les suivantes :

  1. Exécuter le code de la ROM de démarrage.
  2. Exécutez le chargeur de démarrage.
  3. Charger le noyau Linux.
  4. Lancez Zygote, qui initialise la VM Dalvik.
  5. Serveur système qui charge le système Android.

Ma question est donc de savoir comment interrompre cette séquence pour la forcer à s'arrêter à l'étape 3 pour charger le noyau Linux. Cela peut m'aider à mettre en œuvre mes tests de performance intermédiaires avant de charger à nouveau le système Android.

Est-ce que Fastboot ou Clockworkmod recovery peut aider ici et charger mon appareil à une sorte de noyau Linux ?

Tout conseil sera apprécié. Merci.

2voto

Andy Brudtkuhl Points 1714

Non. Android n'est pas comme une distribution GNU/Linux de bureau, où vous pouvez appuyer sur I pour obtenir un démarrage interactif, ou ignorez X et démarrez simplement sur un shell. La seule façon d'y parvenir serait de construire votre propre ROM personnalisée après avoir modifié les scripts init (qui ont à peu près la même fonction que sur un système GNU/Linux de bureau) pour adapter le processus de démarrage comme vous le souhaitez.

0voto

Olivier Lacan Points 839

Si vous êtes capable de Rooter votre appareil ou d'installer une distro Android alternative (Clockworkmod), vous avez peut-être des options disponibles :

  1. Rooter l'appareil : Je ne suis pas sûr que l'image Root d'Android permette la modification (système de fichiers en lecture-écriture). Si oui, vous pouvez probablement modifier les scripts de démarrage pour permettre la modification de votre système. Ou déplacer le init (je ne suis pas sûr de ce que c'est dans Android) et le remplacer par votre propre programme d'initialisation qui, une fois vos modifications activées, sera le suivant exec() l'original init ( init est le premier processus (avec PID 1) qui est exécuté par les systèmes d'exploitation unixy).
  2. Utilisation d'une distro Android alternative (en supposant que la CWN). Si vous pouvez exécuter CWN sur votre appareil, vous pouvez étudier comment construire votre propre image et la modifier pour vos besoins.

Au-delà de l'étape de l'enracinement ou de l'installation/exécution d'une image alternative, de l'obtention d'un accès au shell, j'ai l'impression que - une fois que vous aurez déterminé la voie à suivre - vous aurez plus de chance d'obtenir des réponses aux questions spécifiques (emplacement des scripts de démarrage et leur fonctionnement, aide à la création de votre propre image CWN) à l'adresse suivante http://stackoverflow.com !

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X