Android 8.0 ha introdotto un kernel modulare, suddividendo il kernel del dispositivo in un sistema su chip (SoC), un dispositivo e prodotti specifici della scheda. Questa modifica ha consentito ai produttori di dispositivi originali (ODM) e ai produttori di apparecchiature originali (OEM) di lavorare in alberi isolati e specifici della scheda per funzionalità e driver specifici della scheda, consentendo loro di sovrascrivere le configurazioni comuni del kernel e aggiungere nuovi driver sotto forma di dei moduli del kernel, ecc.
Il supporto del kernel modulare in Android include quanto segue:
- Supporto della piattaforma per SoC indipendente e sviluppo di kernel OEM/ODM. Android 9 e versioni successive consigliano di creare e distribuire tutto il codice specifico della scheda come moduli kernel nei dispositivi. Di conseguenza:
- Tutte le piattaforme dovrebbero supportare Devicetree o Advanced Configuration and Power Interface (ACPI) per descrivere tutti i dispositivi non rilevabili.
- Tutte le piattaforme basate su Devicetree dovrebbero aggiungere nodi di dispositivi specifici della scheda al Devicetree del kernel come sovrapposizioni .
- Test dell'interfaccia binaria dell'applicazione (ABI)/interfaccia di programmazione dell'applicazione (API) in Vendor Test Suite (VTS) . Questi test garantiscono che un determinato kernel possa eseguire il framework Android Open Source Project (AOSP).
- Versione minima del kernel per versione Android.
- Supporto per la generazione di oggetti kernel Android Vendor Interface (VINTF) .