Google keskendub peamiselt Linuxi tuumale uuenduste arendamisele Androidi jaoks

Eelmisel konverentsil Linux Plumbers 2021 rääkis Google oma edusammudest algatuses, mille eesmärk on viia Androidi platvormi üleminek tavapärasele Linuxi tuumale, selle asemel et kasutada enda variant, mis sisaldab Androidi spetsiifilisi muudatusi.

Kõige olulisem muudatus arenduses oli otsus liikuda pärast 2023. aastat „Upstream First” mudeli poole, mis tähendab, et kõik uued tuuma funktsioonid, mis on Androidi platvormile vajalikud, arendatakse otse põhituumas, mitte eraldi harudes (funktsionaalsus edastatakse esmalt põhituumasse ja seejärel rakendatakse Androidis, mitte vastupidi). Aastatel 2023 ja 2024 on plaanis edastada põhituuma kõik täiendavad plaastrid, mis jäävad Android Common Kernel'i harusse.

Lähitulevikus, oodatud oktoobri alguses, pakutakse Android 12 platvormile Generic Kernel Image (GKI) tuumakogumeid, mis on võimalikult lähedased tavalise 5.10 tuumale. Nimetatud kogumitele antakse regulaarselt välja värskendusi, mis paigutatakse ci.android.com reposse. GKI tuumas on platvormispetsiifilised Androidi laiendused ning OEM-tootjatelt saadud riistvara toe töötlejate moodulid eraldatud eraldi tuumamoodulitesse. Need moodulid ei ole seotud põhituuma versiooniga ning võivad areneda eraldi, mis muudab seadmete hooldamise ja uutele tuuma harudele üleviimise oluliselt lihtsamaks.

Google keskendub peamiselt Linuxi tuumale uuenduste arendamisele Androidi jaoks

Seadmete tootjatele vajalikud liidesehituslikud funktsioonid on rakendatud nii, et need võimaldavad muuta tuuma käitumist ilma koodis muudatuste tegemiseta. Kokku on Android 12-5.10 tuumas ette nähtud 194 tavalist hook'i, mis sarnanevad jälgimispunktidega (tracepoint), ja 107 spetsialiseeritud hook'i, mis võimaldavad käivitada töötlejat mitteaatomaarsete kontekstides. GKI tuumas on riistvaratootjatel keelatud panna spetsiifilisi plaastreid põhituuma, ning riistvara toetamiseks mõeldud komponente tohib pakkujatelt hankida ainul täiendavate tuumamoodulite kujul, kus tuleb tagada kokkusobivus põhituumaga.

Tulet meelde, et Androidi platvormil areneb oma tuumaharu - Android Common Kernel, mille põhjal luuakse iga seadme jaoks eraldi spetsiifilised kogumikud. Iga Androidi haru pakub tootjatele mitmeid erinevaid tuumade kompositsioone nende seadmete jaoks. Näiteks Android 11 pakkus kohe kolmes variandis põhituumasid - 4.14, 4.19 ja 5.4, ning Android 12 puhul pakutakse põhituumasid 4.19, 5.4 ja 5.10. Variant 5.10 on vormistatud kui Generic Kernel Image, kus vajalikud OEM-tootjate funktsionaalsused on edastatud upstream'i, viidud moodulitesse või kantud Android Common Kernel'i koosseisu.

Enne GKI-d läbis Androidi tuum mitmeid ettevalmistusetappe:

  • Põhiliste LTS-tuuma (3.18, 4.4, 4.9, 4.14, 4.19, 5.4) baasil loodi jagunemine «Android Common Kernel», kuhu viidi Androidile spetsiifilised patšid (varem ulatus muudatuste maht mitme miljoni reani).
  • «Android Common Kernel'i» alusel kujundasid kiibitootjad, nagu Qualcomm, Samsung ja MediaTek, «SoC Kernel'i», kuhu kuuluvad lisad riistvara toe pakkumiseks.
  • Seoses „SoC Kerneliga“ on seadme tootjad loonud „Device Kerneli“, mis sisaldab muudatusi, mis on seotud lisaseadmete, ekraanide, kaamerate, helisüsteemide ja muu toetamisega.

Sarnane lähenemine on märkimisväärselt raskendanud haavatavuste parandamise uuenduste toimetamist ja üleminekut uutele südamike harudele. Kuigi Google vabastab regulaarselt uuendusi oma Androidi südamikele (Android Common Kernel), ei kiirusta tarnijad tihti nende uuenduste toimetamisega või kasutavad üldse ühe ja sama südamiku seadme kogu elutsükli jooksul.

Vaata videot


Allikas: opennet.ru
Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster