Kernel

Le noyau Linux est une partie extrêmement importante du logiciel sur presque tous les appareils Android. Cette section décrit le développement du noyau Linux et les modèles de versions (ci-dessous),les noyaux stables et supportés à long terme (LTS) (y compris la raison pour laquelle tous les appareils Android devraient utiliser les versions stables au lieu de sélectionner les correctifs), la configuration et le durcissement du noyau, les exigences pour les interfaces et les noyaux modulaires(introduits dans Android O), le débogage du noyau et les tests réseau, et SquashFS.

Développement du noyau Linux

Le noyau Linux est le plus grand projet logiciel collaboratif jamais réalisé. En 2016,plus de 4 000 développeurs différents de plus de 450 entreprises différentes ont contribué au projet et il y a eu 6 versions, chacune contenant entre 12 000 et 16 000 changements différents. Fin 2016, le noyau Linux comptait un peu plus de 56 000 fichiers, soit 22 millions de lignes de code, de scripts de compilation et de documentation (version 4.9 du noyau). (Pour des statistiques complètes sur le développement de Linux, consultez le site https://kernelnewbies.org/DevelopmentStatistics.)

Alors que le noyau Linux contient du code pour toutes les différentes architectures de puces et les pilotes matériels qu’il prend en charge, un système individuel n’exécute qu’une fraction du codebase. Un ordinateur portable moyen utilise environ 2 millions de lignes de code du noyau à partir de 5 mille fichiers pour fonctionner correctement, tandis que le téléphone Pixel utilise 3,2 millions de lignes de code du noyau à partir de 6 mille fichiers (en raison de la complexité accrue d’un SoC).

Les versions du noyau Linux

Le noyau Linux utilise un modèle de publication qui diffère considérablement des versions AOSP standard. Avec la sortie du noyau 2.6 en décembre 2003,la communauté des développeurs du noyau a abandonné le modèle précédent qui consistait à avoir une branche de développement et une branche stable du noyau séparées, et est passée à un modèle de branche stable uniquement. Dans ce modèle, une nouvelle version est publiée tous les 2 ou 3 mois, et cette version est déclarée stable et recommandée à tous les utilisateurs. Ce changement de modèle de développement était dû au cycle de publication très long avant le noyau 2.6 (près de 3 ans), et à la lutte pour maintenir deux branches différentes de la base de code en même temps.

La numérotation des versions du noyau a commencé à 2.6.x, où x était un numéro croissant qui changeait à chaque version (la valeur du numéro n’a aucune signification, si ce n’est qu’il est plus récent que la version précédente du noyau). La version du noyau depuis lors est maintenant passée à 4.x comptabilisant 2 changements de version majeurs.Ces numéros de version sont choisis par le(s) mainteneur(s) uniquement pour éviter la confusion chez les utilisateurs causée par des numéros de versions mineures plus élevés.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.