Kernel-Anforderungen
Android 8.0 und höher erfordern eine minimale Kernel-Version und Kernel-Konfiguration, die durch die Vendor Test Suite (VTS) und OTA-Updates (over-the-air) verifiziert wird. Android-Gerätekernel müssen die Kernel-.config
-Unterstützung und die Option zum Lesen der Kernelkonfiguration zur Laufzeit über procfs
aktivieren.
Kernel.config-Unterstützung
Alle Gerätekernel müssen die Gesamtheit von android-base.cfg aktivieren, die die folgenden Kernel-Config-Optionen (oder deren Äquivalent zur Kernel-Version) enthalten muss:
CONFIG_IKCONFIG=yCONFIG_IKCONFIG_PROC=y
Kernel-Version
Für Android 9 sind die Mindestanforderungen an die Long Term Support (LTS)-Kernel-Version 4.4.107, 4.9.84 und 4.14.42.
- Alle System-on-Chips (SoCs), die im Jahr 2018 produziert werden, müssen mit Kernel 4.9.84 oder neuer starten.
- Alle anderen SoCs, die Android-Geräte mit Android 9 starten, müssen Kernel 4.4.107 oder höher verwenden.
- Gerätekernel, die auf 4.14 basieren, müssen die LTS-Version 4.14.42 oder höher enthalten.
- Ungeachtet des Einführungsdatums unterliegen alle SoCs mit Gerätestarts unter Android 8.0 und höher weiterhin den für die Aktivierung von Treble erforderlichen Kerneländerungen.
- Ältere Android-Geräte, die auf Android 8.0 oder höher aktualisiert werden, können weiterhin ihre ursprüngliche Basis-Kernel-Version verwenden.
Details zu LTS-Kerneln finden Sie unter Langzeitstabile Kernel und Android Common Kernel
Devicetree-Unterstützung
Wenn die Plattform kein Advanced Configuration and Power Interface (ACPI) unterstützt, muss die Devicetree-Unterstützung im Kernel aktiviert sein und Bootloader müssen die Hardwarebeschreibung in Form eines Devicetree an den Kernel übergeben. Der Devicetree muss auch für Android lesbar sein und in der Lage sein, hersteller- und ODM-spezifische Parameter an Android zu übergeben. CONFIG_OF
ist obligatorisch, zusammen mit allen anderen geräte- und subsystemspezifischen CONFIG_OF_*
Kernelkonfigurationsoptionen.
DebugFS
Die Implementierung der Herstellerschnittstelle kann sich nicht auf debugfs
verlassen. In Android 7.0-10 kann debugfs
aktiviert werden, aber VTS-Tests können mit ungemountetem debugfs
durchgeführt werden.
In Android 11 kann auf debugfs
auf Produktionsgeräten nicht zugegriffen oder gemountet werden. Gerätehersteller sollten debugfs
entfernen. Vor Android 11 griff dumpstate auf binder-Statistiken von debugfs zu. Da Benutzer-Builds, die mit Android 11 gestartet werden, nicht mehr auf debugfs zugreifen können, kann dumpstate nun auch auf binder-Statistiken von binderfs zugreifen. Binderfs kann durch die Aktivierung der Kernelkonfiguration CONFIG_ANDROID_BINDERFS aktiviert werden.
In Android 11 erzwingt VTS, dass CONFIG_DEBUG_FS
in der Kernelkonfiguration des Geräts nicht aktiviert ist und debugfs
nicht unter /proc/filesystems
aufgeführt ist.