EFIDroid: un chargeur de démarrage de deuxième étape utilisant le micrologiciel UEFI pour effectuer un démarrage multiple [XDA Spotlight]

Le multi-démarrage est un sujet complexe et son activation nécessite souvent des correctifs pour votre noyau ou une récupération. EFIDroid est un outil qui fonctionne autour de cela.

Les implémentations de double démarrage et multi-ROM ont constitué un défi majeur pour les développeurs Android pour un certain temps. Les solutions précédentes nécessitaient généralement des développement spécifique à l'appareil et un soutien supplémentaire de la part des développeurs ROM. Même dans ce cas, ils sont souvent plus compliqués qu’ils ne valent pour l’utilisateur moyen de ROM. EFIDroïde cherche à remédier à tout cela.

Anciennement connu sous le nom de GRUB4Android, EFIDroid a été créé par un développeur et contributeur reconnu par XDA. m11kkaa comme moyen de permettre efficacement presque toutes les ROM à démarrer plusieurs fois sans modification la ROM souhaitée ou la récupération en cours. Cela signifie pas de correctifs de noyau, non kexec, aucun problème d'incompatibilité de ROM et aucun casse-tête pour les utilisateurs ou les développeurs de ROM.


Qu’est-ce qu’EFIDroid ?

Crédit d’image: EFIDroid

EFIDroid est un chargeur de démarrage de deuxième étape conçu pour permettre au code du chargeur de démarrage d'origine de l'appareil de gérer l'interface matérielle elle-même, simplifiant ainsi le travail qui doit être effectué pour porter cette application sur différents appareils. Ceci est basé sur Intel EDK II projet qui a une base de code bien établie et offre une extensibilité substantielle. Cette implémentation utilise le chargeur de démarrage open source de Qualcomm, Petit noyau (LK), et en tant que tel, le support est actuellement limité aux appareils Snapdragon.

L'installation est aussi simple que de télécharger le Application EFIDroidManager depuis le Google Play Store sur un appareil rooté, à condition que votre appareil dispose d'un support fusionné dans celui du projet dépôt github. Si votre appareil est pris en charge, l'application téléchargera le code correspondant et vous permettra d'installer, désinstaller, réinstaller et réparer EFIDroid, ainsi que vous permettre de gérer vos ROM dans un multiboot configuration. Une fois EFIDroid installé, les ROM peuvent être installées à l'emplacement de votre choix (généralement quelque part comme /data/media/0/multiboot/NAME).

Pour le moment, seule une poignée d'appareils sont pris en charge, notamment le Moto E (Condor), Moto G 4G (Pérégrin), Nokia X2, Un plus un, Vega Iron 2 et le Fairphone 2. Cependant, m11kkaa est à la recherche de développeurs pour aider au portage d'EFIDroid vers d'autres appareils – certains bénéficient déjà d’un « soutien officieux ». Si vous parvenez à faire fonctionner EFIDroid sur un autre appareil, le processus d'intégration dans l'application nécessite simplement envoyer une pull request au git EFIDroid dépôt. M11kkaa nous a également informé qu'il prévoyait d'étendre l'application pour potentiellement prendre en charge les plugins de démarrage et les applications UEFI (tout en gardant à l'esprit qu'il ne s'agit que de projets à ce stade).


Comment ça fonctionne

EFIDroid exploite LK comme couche d'abstraction pour interagir avec le matériel de l'appareil. L'application permet de tirer pleinement parti de ces composants grâce aux vastes capacités de l'UEFI, parmi lesquelles la possibilité de charger un noyau Linux à un moment donné.

point ultérieur.

EFIDroid utilise la bibliothèque du noyau Linux comme moyen de compiler le noyau Linux en tant que bibliothèque logicielle. Cela permet à l'UEFI d'utiliser des pilotes de système de fichiers pour lire et écrire vers et depuis plusieurs partitions de démarrage, ainsi que de lui donner la possibilité de démarrer sur plusieurs ROM ou environnements de récupération. EFIDroid peut également afficher des messages d'erreur provenant d'un démarrage précédemment échoué. Le créateur a même mentionné la possibilité d'utiliser la bibliothèque du noyau Linux pour ajouter la prise en charge des écrans tactiles à l'avenir.

Tout cela nécessite bien sûr un accès root et un chargeur de démarrage déverrouillé sur votre appareil mais ne nécessite pas de noyau personnalisé.

Crédit d’image: EFIDroid


Plus qu'un simple démarrage multiple 

La mise en œuvre d'un chargeur de démarrage UEFI ouvre les appareils Android à de nombreuses possibilités. Divers plug-ins, notamment des diagnostics tels que Memtest86, l'ouverture d'une ligne de commande et même des jeux, sont possibles dans l'environnement UEFI. Bien qu'une assistance soit nécessaire pour concrétiser davantage de ces possibilités, EFIDroid offre toujours certaines fonctionnalités clés pour les appareils compatibles. Qu'il soit utilisé simplement comme chargeur de démarrage alternatif pour les appareils qui peuvent manquer d'options de récupération ou comme outil de gestion et dépannant plusieurs ROM ou environnements de récupération, cet outil offre tout ce qui précède et le fait avec un utilisateur convivial et interface utilisateur simple pour démarrer.

Pour d'autres discussions, rendez-vous sur le site fil de discussion ou suivez le projet sur les liens ci-dessous !

EFIDroid sur Github

Site officiel d'EFIDroid

Communauté Slack d'EFIDroid


Avez-vous déjà essayé EFIDroid? Souhaitez-vous bénéficier d'une assistance pour votre appareil? Faites-le nous savoir dans les commentaires ci-dessous !