Google zal zich richten op de ontwikkeling van innovaties voor Android in de hoofdversie van Linux

Tijdens de onlangs gehouden Linux Plumbers Conference 2021 heeft Google gesproken over de successen van het initiatief om het Android-platform over te laten stappen op een standaard Linux-kernel in plaats van een aangepaste versie met Android-specifieke wijzigingen.

De belangrijkste verandering in de ontwikkeling is het besluit om na 2023 over te schakelen op het 'Upstream First'-model, wat inhoudt dat alle nieuwe kernelmogelijkheden die nodig zijn voor het Android-platform, rechtstreeks in de reguliere Linux-kernel worden ontwikkeld, in plaats van in aparte takken. Functionaliteit zal eerst naar de reguliere kernel worden gepromoot en daarna worden gebruikt in Android, en niet andersom. Voor 2023 en 2024 is er ook een plan om alle extra patches die in de Android Common Kernel-tak blijven, in de reguliere kernel op te nemen.

Wat betreft de nabije toekomst, voor het verwachte Android 12-platform dat begin oktober komt, zullen er kernbundels van de 'Generic Kernel Image' (GKI) worden aangeboden, zoveel mogelijk dicht bij de reguliere kernel 5.10. Voor deze bundels zal er regelmatig een release van updates worden verstrekt, die in de ci.android.com-repository zullen worden geplaatst. In de GKI-kernel zijn Android-specifieke uitbreidingen en de OEM-specifieke hardwareondersteuningshandlers in aparte kernelmodules geplaatst. Deze modules zijn niet gekoppeld aan de versies van de reguliere kernel en kunnen afzonderlijk worden ontwikkeld, wat het onderhoud en de migratie van apparaten naar nieuwe kernversies aanzienlijk vereenvoudigt.

Google zal zich richten op de ontwikkeling van innovaties voor Android in de hoofdversie van Linux

De interfaces die nodig zijn voor apparaatfabrikanten zijn gerealiseerd in de vorm van hooks, die het mogelijk maken om het gedrag van de kernel te wijzigen zonder wijziging van de code. In de android12-5.10-kernel worden in totaal 194 gewone hooks aangeboden, vergelijkbaar met tracepoint, en 107 gespecialiseerde hooks die het mogelijk maken om handlers in een niet-atomair context uit te voeren. In de GKI-kernel is het voor hardwarefabrikanten verboden om specifieke patches op de reguliere kernel aan te brengen, en de componenten voor hardwareondersteuning moeten door leveranciers alleen als extra kernelmodules worden geleverd, waarbij compatibiliteit met de reguliere kernel moet worden gegarandeerd.

Laten we herinneren dat op het Android-platform een eigen tak van de kernel wordt ontwikkeld - de Android Common Kernel, waarop voor elk apparaat afzonderlijke specifieke builds worden gemaakt. In elke tak worden fabrikanten verschillende opties voor kernconfiguraties aangeboden voor hun apparaten. Bijvoorbeeld, in Android 11 werden drie basis-kernels - 4.14, 4.19 en 5.4 - aangeboden, en voor Android 12 zullen de basis-kernels 4.19, 5.4 en 5.10 worden aangeboden. Optie 5.10 is gepresenteerd als een Generic Kernel Image, waarin de nodige functionaliteiten voor OEM-fabrikanten zijn doorgegeven aan upstream, in modules zijn geplaatst of zijn overgebracht naar de Android Common Kernel.

Voor de introductie van GKI doorliep de kernel voor Android verschillende voorbereidende fasen:

  • Op basis van de belangrijkste LTS-kernels (3.18, 4.4, 4.9, 4.14, 4.19, 5.4) werd er een tak 'Android Common Kernel' gecreĆ«erd, waarin specifieke voor Android patches werden overgebracht (voorheen bedroeg de grootte van de wijzigingen enkele miljoenen regels).
  • Op basis van de 'Android Common Kernel' vormden chipfabrikanten, zoals Qualcomm, Samsung en MediaTek, de 'SoC Kernel', die uitbreidingen bevatten ter ondersteuning van hardware.
  • Op basis van de "SoC Kernel" hebben fabrikanten van apparaten de "Device Kernel" gemaakt, die wijzigingen bevatten gerelateerd aan de ondersteuning van extra hardware, schermen, camera's, geluidsystemen, enzovoort.

Een dergelijke aanpak maakte de implementatie van updates ter bestrijding van kwetsbaarheden en de overgang naar nieuwe kernel-takken aanzienlijk complexer. Ondanks het feit dat Google regelmatig updates voor zijn Android-kernels (Android Common Kernel) uitbrengt, zijn leveranciers vaak terughoudend om deze updates te leveren of gebruiken ze gedurende de hele levenscyclus van het apparaat dezelfde kernel.

Video afspelen


Bron: opennet.ru
Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster