Op de laatste Linux Plumbers 2019-conferentie heeft Google
Zodra het project klaar is, wordt leveranciers gevraagd een basiskernel te leveren, gebaseerd op de belangrijkste Linux-kernel. Componenten voor hardwareondersteuning worden door leveranciers alleen geleverd in de vorm van aanvullende kernelmodules, zonder patches op de kernel aan te brengen. Modules moeten compatibel zijn met de hoofdkernel op het niveau van de kernelsymboolnaamruimte. Alle veranderingen die de hoofdkern beïnvloeden, zullen naar bovenstrooms worden gepromoot. Om de compatibiliteit met propriëtaire modules binnen LTS-takken te behouden, wordt voorgesteld om de kernel-API en ABI in een stabiele vorm te behouden, waardoor de modulecompatibiliteit met updates voor elke algemene kerneltak behouden blijft.
In de loop van een jaar worden functies zoals het PSI-subsysteem (Pressure Stall Information) voor het analyseren van informatie over de wachttijd voor het verkrijgen van verschillende bronnen (CPU, geheugen, I/O) en het BinderFS pseudo-bestandssysteem voor de communicatie tussen processen mechanisme werden overgebracht naar de belangrijkste Linux-kernel van de Android-kerneleditie, Binder en energiezuinige taakplanner EAS (Energy Aware Scheduling). Het is de bedoeling dat Android in de toekomst wordt overgezet van de specifieke SchedTune-planner naar het nieuwe UtilClamp-subsysteem dat is ontwikkeld in ARM, gebaseerd op cgroups2 en standaard kernelmechanismen.
Laten we niet vergeten dat de kernel voor het Android-platform tot nu toe verschillende voorbereidingsfasen heeft doorlopen:
- Op basis van de belangrijkste LTS-kernels (3.18, 4.4, 4.9 en 4.14) werd een tak van de "Android Common Kernel" gemaakt, waarin Android-specifieke patches werden overgebracht (voorheen bereikte de omvang van de wijzigingen enkele miljoenen regels, maar onlangs de wijzigingen zijn teruggebracht tot enkele duizenden regels code).
- Gebaseerd op de "Android Common Kernel", vormden chipfabrikanten zoals Qualcomm de "SoC Kernel" die add-ons bevatte om de hardware te ondersteunen.
- Op basis van de SoC Kernel hebben apparaatfabrikanten de Device Kernel gemaakt, die wijzigingen bevatte met betrekking tot ondersteuning voor extra apparatuur, schermen, camera's, geluidssystemen, enz.
In wezen had elk apparaat zijn eigen kernel, die niet op andere apparaten kon worden gebruikt. Een dergelijk schema bemoeilijkt de implementatie van updates om kwetsbaarheden te elimineren en de overgang naar nieuwe kernelvertakkingen aanzienlijk. De nieuwste Pixel 4-smartphone, uitgebracht in oktober, wordt bijvoorbeeld geleverd met Linux-kernel 4.14, die twee jaar geleden werd uitgebracht. Gedeeltelijk probeerde Google het onderhoud te vereenvoudigen door reclame te maken voor het systeem
Bron: opennet.ru