Quel Android utilise quel noyau Linux?

Réponses:

57

Version Linux en AOSP

    Android Version    |API Level  |Linux Version in AOSP                    |Header Version
    ----------------------------------------------------------------------------------------
    1.5   Cupcake      |3          |(2.6.27)                                 |
    1.6   Donut        |4          |(2.6.29)                                 |2.6.18
    2.0/1 Eclair       |5-7        |(2.6.29)                                 |2.6.18
    2.2.x Froyo        |8          |(2.6.32)                                 |2.6.18
    2.3.x Gingerbread  |9, 10      |(2.6.35)                                 |2.6.18
    3.x.x Honeycomb    |11-13      |(2.6.36)                                 |2.6.18
    4.0.x Ice Cream San|14, 15     |(3.0.1)                                  |2.6.18
    4.1.x Jelly Bean   |16         |(3.0.31)                                 |2.6.18
    4.2.x Jelly Bean   |17         |(3.4.0)                                  |2.6.18
    4.3   Jelly Bean   |18         |(3.4.39)                                 |2.6.18
    4.4   Kit Kat      |19, 20     |(3.10)                                   |2.6.18
    5.x   Lollipop     |21, 22     |(3.16.1)                                 |3.14.0
    6.0   Marshmallow  |23         |(3.18.10)                                |3.18.10
    7.0   Nougat       |24         | 3.18.48 4.4.0                           |4.4.1
    7.1   Nougat       |25         | ?                                       |4.4.1
    8.0   Oreo         |26         | 3.18.72 4.4.83  4.9.44                  |4.10.0
    8.1   Oreo         |27         | 3.18.70 4.4.88  4.9.56                  |4.10.0
    9.0   Pie          |28         |         4.4.146 4.9.118 4.14.61         |4.15.0
   10.0   Q            |29         |                 4.9.191 4.14.142 4.19.71|5.0.3

Tableau compilé à partir de:

Remarque: d'autres «distributions» d'Android peuvent exécuter différentes versions du noyau.

Tout le monde est invité à corriger et élargir ce tableau. S'il vous plaît garder le formatage.

Pourquoi les incompatibilités de version du système d'exploitation Android / du noyau

Les constructeurs ont tendance à envoyer leurs principales mises à jour Android avec un noyau similaire à celui avec lequel le périphérique a été initialement publié. Cela évitera probablement des problèmes d'incompatibilité de matériel et de pilotes avec un noyau plus récent. Par exemple, un périphérique mis à jour pour exécuter Android 8.0 Oreo mais fourni à l'origine avec 6.0 Marshmallow peut toujours exécuter Linux 3.18.x au lieu de Linux 4.10.x.

Spécifications de la suite de tests de fournisseur (VTS) sur la version Linux

Selon un article de 2017 sur XDA-Developers (abrégé):

La version du noyau Linux est l’un des aspects qui incombait au fabricant OEM, mais elle évolue avec Android Oreo.

Tant que le fabricant OEM a réussi les tests de certification proposés par Google, il ne se souciait pas de savoir quelle version du noyau était utilisée dans un nouveau périphérique. Ce n’était généralement pas un problème, car la plupart des OEM utilisaient la même version du noyau pour cette génération que celle utilisée par d’autres OEM, car elle est étroitement liée à la prise en charge des pilotes de matériel. Cependant, certains avaient été laissés pour compte et cela a commencé à poser des problèmes de sécurité. C’est quelque chose que Google a pris au sérieux ces derniers temps;

À compter de cette année avec les smartphones fournis avec Android Oreo, Google exige que tous les SoC produits en 2017 soient lancés avec le noyau 4.4 ou plus récent.

Les périphériques actuellement mis à niveau vers Android Oreo ne sont requis que pour exécuter la version 3.18 ou ultérieure du noyau et ne devront pas être mis à niveau pour prendre en charge Project Treble.

Selon https://android.googlesource.com/platform/test/vts-testcase/kernel/ , la version Linux, VtsKernelConfigTest ou VtsKernelVersionTest, était obligatoire sur les versions 8.0, 8.1 et 9.0, mais a été supprimée ultérieurement à la version 10.0. Pour 8.0 et 8.1, il faut que la version soit 3.18, 4.4 ou 4.9. Pour la version 9.0, la version doit être au moins 4.4.107, 4.9.84 ou 4.14.42.

Des informations plus techniques et récentes sont disponibles directement sur le site Web d'AOSP: https://source.android.com/devices/architecture/kernel/core-kernel-reqs

Icosie
la source
7
Aucune règle de fast fast Par exemple, ICS / JB sur Zte Blade utilisait le noyau 2.6.35, ICS sur Sony Xperia Mini était de 2.6.32 ... prenez ceci avec une pincée de sel pour guide: :)
t0mm13b
3
Je peux parfaitement comprendre pourquoi différents appareils exécutant la même version Android exécutent différents noyaux, mais ce tableau n’est qu’une règle empirique et, oui, je voudrais un grain de sel avec ma règle empirique =)
John,
3
Limitons la table ici à AOSP Android!
Robert Siemer
3
De même, lorsqu'un périphérique est publié avec une version android spécifique et un noyau, et plus tard, la version android est mise à jour par le fabricant, la version du noyau est généralement conservée dans la version initiale avec des correctifs.
Bharat G
1
Notez que même Google ne suit pas cela. Je viens de vérifier l'émulateur avec l'API 26 et le noyau 3.18.56+
Roy Falk