Auf welchem Android läuft welcher Linux Kernel?

Linux-Version in 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

Tabelle zusammengestellt aus:

  • Wikipedia Android-Versionsverlauf (in Klammern; kann die Quelle nicht finden)
  • android / kernel / common / Makefile (das Linux in AOSP)
  • android / platform / external / kernel-headers / original / uapi / linux / version.h (die Linux-Header, wie sie von Bionic in AOSP verwendet werden)

Hinweis: Andere “Distributionen” von Android führen möglicherweise andere Kernel-Versionen aus.

Jeder ist willkommen, diese Tabelle zu korrigieren und zu erweitern. Bitte formatieren Sie weiter.

Warum Android OS / Kernel-Version nicht übereinstimmt

OEMs neigen dazu, ihre wichtigsten Android-Updates mit einem ähnlichen Kernel zu versenden, mit dem das Gerät ursprünglich veröffentlicht wurde. Dies ist sehr wahrscheinlich, um Hardware- und Treiber-Inkompatibilitätsprobleme mit einem neueren Kernel zu vermeiden. Zum Beispiel kann ein Gerät, das aktualisiert wurde, um Android 8.0 Oreo auszuführen, aber ursprünglich mit 6.0 Marshmallow ausgeliefert wurde, immer noch Linux 3.18 ausführen.x statt Linux 4.10.x.

Vendor Test Suite (VTS) Anforderungen an die Linux-Version

Laut einem Artikel von 2017 auf XDA-Developers (gekürzt):

Ein Aspekt, der dem OEM überlassen blieb, ist die Linux-Kernel-Version, aber dies ändert sich mit Android Oreo.

Solange der OEM in der Lage war, die von Google festgelegten Zertifizierungstests zu bestehen, war es ihm egal, welche Kernel-Version in einem neuen Gerät verwendet wurde. Dies war im Allgemeinen kein Problem, da die meisten OEMs die gleiche Version des Kernels für diese Generation verwenden würden, die andere OEMs verwendeten, da sie stark an die Unterstützung der Hardwaretreiber gebunden ist. Einige waren jedoch durch die Risse gefallen, was zu Sicherheitsproblemen führte. Dies ist etwas, das Google in letzter Zeit ernst genommen hat, daher ist es sinnvoll, dass sie dies veranlassen möchten.

Beginnend in diesem Jahr mit Smartphones, die mit Android Oreo ausgeliefert werden, verlangt Google, dass alle 2017 produzierten SoCs mit Kernel 4.4 oder neuer gestartet werden müssen.

Derzeit vorhandene Geräte, die auf Android Oreo aktualisiert werden, müssen nur die Kernel-Version 3.18 oder neuer ausführen und müssen nicht aktualisiert werden, um Project Treble zu unterstützen.

Laut https://android.googlesource.com/platform/test/vts-testcase/kernel/ gab es eine Anforderung für die Linux-Version VtsKernelConfigTest oder VtsKernelVersionTest auf 8.0, 8.1 und 9.0, die jedoch später auf 10.0 entfernt wurde. Für 8.0 und 8.1 muss die Version entweder 3.18, 4.4 oder 4.9 sein. Für 9.0 muss die Version mindestens 4.4.107, 4.9.84 oder 4.14.42 sein.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.