Google werk daaraan om 'n gewone Linux-kern in Android te gebruik

By die laaste Linux Plumbers 2019-konferensie, Google hy vertel oor die ontwikkeling inisiatiewe op die oordrag van veranderinge wat in die Linux-kern ontwikkel is na die hoof Linux-kern kern weergawe vir die Android-platform. Die uiteindelike doel is om Android toe te laat om een ​​gemeenskaplike kern te gebruik, in plaas daarvan om aparte bouwerk vir elke toestel voor te berei gebaseer op 'n Android-spesifieke tak Android Gewone kern. Hierdie doelwit is reeds gedeeltelik bereik, en die Xiaomi Poco F1 Android-slimfoon met firmware gebaseer op die gewone ongewysigde Linux-kern is by die konferensie gedemonstreer.

Sodra die projek gereed is, sal verkopers gevra word om 'n basiskern te verskaf wat gebaseer is op die hoof Linux-kern. Komponente vir hardeware-ondersteuning sal slegs deur verskaffers verskaf word in die vorm van bykomende kernmodules, sonder om pleisters op die kern toe te pas. Modules sal versoenbaar moet wees met die hoofkern op die kernsimboolnaamruimtevlak. Alle veranderinge wat die hoofkern raak, sal na stroomop bevorder word. Om verenigbaarheid met eie modules binne LTS-takke te handhaaf, word voorgestel om die kern-API en ABI in 'n stabiele vorm te handhaaf, wat module-versoenbaarheid sal handhaaf met opdaterings vir elke algemene kerntak.

Google werk daaraan om 'n gewone Linux-kern in Android te gebruik

Oor die loop van 'n jaar, kenmerke soos die PSI (Pressure Stall Information) substelsel vir die ontleding van inligting oor die wagtyd vir die verkryging van verskeie hulpbronne (CPU, geheue, I/O), en die BinderFS pseudo-lêerstelsel vir die interproses kommunikasie meganisme is oorgedra na die hoof Linux-kern vanaf die Android-kernuitgawe Binder en energiedoeltreffende taakskeduleerder EAS (Energy Aware Scheduling). In die toekoms word beplan om Android van die spesifieke SchedTune-skeduleerder na die nuwe UtilClamp-substelsel wat in ARM ontwikkel is, oorgedra te word, gebaseer op cgroups2 en standaard kernmeganismes.

Google werk daaraan om 'n gewone Linux-kern in Android te gebruik

Laat ons onthou dat die kern vir die Android-platform tot nou toe deur verskeie stadiums van voorbereiding gegaan het:

  • Gebaseer op die hoof LTS-pitte (3.18, 4.4, 4.9 en 4.14), is 'n tak van die "Android Common Kernel" geskep, waarin Android-spesifieke kolle oorgedra is (voorheen het die grootte van die veranderinge 'n paar miljoen reëls bereik, maar onlangs die veranderinge is verminder tot etlike duisend reëls kode ).
  • Op grond van die "Android Common Kernel", het chipvervaardigers soos Qualcomm "SoC Kernel" gevorm wat byvoegings ingesluit het om die hardeware te ondersteun.
  • Gebaseer op die SoC Kernel, het toestelvervaardigers die Device Kernel geskep, wat veranderinge ingesluit het wat verband hou met ondersteuning vir bykomende toerusting, skerms, kameras, klankstelsels, ens.

Google werk daaraan om 'n gewone Linux-kern in Android te gebruik

In wese het elke toestel sy eie kern gehad, wat nie op ander toestelle gebruik kon word nie. Hierdie skema bemoeilik die implementering van opdaterings aansienlik om kwesbaarhede en die oorgang na nuwe kerntakke uit te skakel. Byvoorbeeld, die nuutste Pixel 4-slimfoon, wat in Oktober vrygestel is, word saam met Linux-kern 4.14 gestuur, wat twee jaar gelede vrygestel is. Google het gedeeltelik probeer om onderhoud te vereenvoudig deur die stelsel te bevorder Treble, wat vervaardigers toelaat om universele hardeware-ondersteuningskomponente te skep wat nie gekoppel is aan spesifieke Android-weergawes en Linux-kernvrystellings wat gebruik word nie. Treble maak dit moontlik om gereedgemaakte opdaterings van Google as basis te gebruik, en daarby integreer komponente spesifiek vir 'n spesifieke toestel.


Bron: opennet.ru

Voeg 'n opmerking