Qu’est-ce qu’un kernel et à quoi ça sert ?

Alors que vous plongez dans les méandres de la personnalisation Android, vous croiserez très souvent le terme “kernel”. Mais qu'est-ce que celui-ci peut bien signifier ? Nous vous l'expliquons de la manière la plus simple possible afin de vous permettre de mieux comprendre le fonctionnement de votre appareil.

Android a pour lui qu'il est un système d'exploitation libre en open source. Ce que cela sous-entend, c'est que les développeurs ont librement accès à son code, son “programme”, et peuvent le modifier à souhait comme bon leur semble.

C'est ce principe qui a fait tout le sel de l'OS de Google depuis sa naissance : bien que les consommateurs aient l'habitude des surcouches des constructeurs comme Samsung ou préfèrent un Android pur dénué de modifications, ils peuvent également prendre le contrôle de leur téléphone et y installer une version différente de ce qu'ils ont acquis de base en achetant leur smartphone ou tablette.

Lorsque l'on tente de prendre ce contrôle, on se heurte bien souvent à un terme pouvant paraître difficilement compréhensible : le “kernel”, qui est lui aussi modifiable. Mais qu'est-ce donc que ceci ? Nous allons vous l'expliquer, de la manière la plus simple possible comme nous l'avons fait pour l'ADB et le Fastboot.

Qu'est-ce que le kernel Android ?

Il vous faut d'abord vous rappeler d'une chose : tous les systèmes informatiques que nous connaissons aujourd'hui (smartphones, tablettes, PC et j'en passe) sont incroyablement stupides. Vos processeurs, vos barrettes de mémoires RAM, vos écrans ne savent pas se gérer eux-mêmes.

Ce ne sont que des matériels (ou hardware, l'anglicisme restant courant dans ce monde) qui ont ainsi besoin d'ordres pour devenir véritablement utiles. Ces ordres seront donnés par la partie logicielle (ou software) qui est la grande commandante de toutes ces unités.

Il s'agit donc d'une relation de co-dépendance : le matériel n'existe pas sans le logiciel, le logiciel ne sert à rien sans le matériel. Ce que l'on appelle “kernel” (ou noyau en français) fait partie de cette deuxième catégorie des logiciels.

Tous les systèmes informatiques possèdent un noyau, de Windows à Mac OS en passant par, vous l'aurez deviné, Android. Il en existe énormément, mais sachez que ce système d'exploitation utilise celui de Linux. Le noyau est le logiciel qui va interagir le plus directement avec le matériel que vous possédez.

A quoi sert un kernel ?

Il peut donc être vu comme la première ou la dernière étape du système. Pourquoi cela ? Tout simplement parce qu'il s'agit du maître d'orchestre qui va faire fonctionner votre matériel. Peu importe ce que vous faites sur votre appareil, cela passera nécessairement par le kernel.

Il est le coeur du système (d'où son appellation de noyau), qui va gérer les ressources de votre processeur, votre mémoire, vos “appareils” comme le Bluetooth et j'en passe. Il va leur dire dans quel ordre et comment gérer des instructions, et avec qui gérer tout ça.

Il est le mini patron infernal de votre téléphone. Celui que l'on adore détester mais sans qui l'entreprise ne fonctionnerait tout simplement pas. Lorsque vous lancez une application, il va aller dire à votre mémoire de stockage de trouver et lancer les fichiers correspondants, à votre mémoire RAM de laisser de la place pour qu'elle puisse s'exécuter et à votre processeur de traiter le tout.

En somme, le kernel est un salaud. Mais puisque nos processeurs et nos barrettes de RAM ne sont pas (encore) vivants, ils ne feront pas grève et s'exécuteront bien gentiment.

Pourquoi changer de kernel ?

Dans l'univers de la personnalisation d'Android, vous trouverez souvent des systèmes d'exploitation alternatifs qui changent également le noyau de votre téléphone. A la vue de l'explication précédente, on pourrait penser qu'il s'agit d'une mauvaise idée.

Toutefois, les kernels sont souvent très anciens et traînent avec eux des compatibilités avec du matériel qui peuvent sembler inutiles pour les utilisateurs. Certains développeurs font donc le ménage afin de rendre celui-ci plus rapide et performant.

Mais la principale raison qui poussera un développeur à modifier un kernel Android sera de prendre le contrôle du processeur, et plus particulièrement de sa rapidité. En effet, ralentir quelque peu la fréquence à laquelle celui-ci s'exécute permet de gagner en autonomie. En prendre le contrôle permet donc une gestion bien plus poussée de celle-ci.

Voir les commentaires
Ailleurs sur le web