aktuální Android ekosystému je znečištěné s stovky různých verzí Androidu, každý běží jinou variantu Linuxového jádra. Každá verze je určena pro jiný telefon a je to různé konfigurace. Google pracuje na vyřešení problému přidáním hlavního jádra Linuxu do systému Android.
jak je linuxové jádro aktuálně zpracováno v systému Android
než se k vám dostane, Linuxové jádro na vašem mobilním telefonu prochází třemi hlavními kroky.
nejprve Google vezme verzi linuxového jádra LTS (Long Term Support) a přidá veškerý kód specifický pro Android. To se stává „Android Common kernel“.
Google poté odešle tento kód společnosti, která vytvoří systém na čipu (SoC), který spouští váš telefon. To je obvykle Qualcomm.
Jakmile SoC výrobce dokončí přidat kód pro podporu CPU a jiné čipy, jádro je pak přenesena na samotné zařízení, výrobce, jako je Samsung nebo Motorola. Výrobce zařízení pak přidá kód pro podporu zbytku telefonu, jako je displej a fotoaparát.
dokončení každého z těchto kroků chvíli trvá a výsledkem je jádro, které nebude fungovat s žádným jiným zařízením. To také znamená, že jádro je velmi staré, obvykle asi dva roky staré. Například Google Pixel 4, který byl dodán minulý měsíc, má jádro od listopadu 2017, které se nikdy nebude aktualizovat.
Google se zavázala vytvořit bezpečnostní záplaty pro starší zařízení, což znamená, že jsou přilepená pozor na obrovské hodge-podge starý kód.
v Loňském roce, Google oznámil plány na opravit tento nepořádek. Letos odhalili, jaký pokrok dosáhli na konferenci Linux Instalatéři 2019.
“ víme, co to znamená spustit Android, ale ne nutně na daném hardwaru. Takže naším cílem je v podstatě to všechno zjistit, pak proti proudu a pokusit se být co nejblíže hlavní linii.“
Sandeep Patil, Android Kernel Team Lead
předvedli Xiaomi poco F1 se systémem Android se správným jádrem Linuxu. Zdálo se však, že některé věci nefungují, například procento baterie, které bylo přilepené na 0%.
Jak tedy Google plánuje, aby to fungovalo? Tím, že stránku z jejich projektu výšek playbook. Před Project Treble, nízkoúrovňový kód, který interagoval se zařízením a samotným Androidem, byl jeden velký nepořádek kódu. Project Treble je oddělil a učinil je modulárními, takže aktualizace systému Android mohly být dodávány rychleji a kód nízké úrovně mohl zůstat mezi aktualizacemi nezměněn.
Google chce do jádra přinést stejnou modularitu. Jejich plán “ zahrnuje stabilizaci ABI v jádře Linuxu a stabilní rozhraní pro dodavatele linuxového jádra a hardwaru. Google chce oddělit Linuxové jádro od hardwarové podpory.“
to znamená, že Google bude dodávat jádro a hardwarové ovladače budou načteny jako moduly jádra. V současné době je to jen návrh. Stále existuje poměrně málo technických problémů, které je třeba vyřešit. takže se to v dohledné době nestane.
opozice z Open Source
komunita Open Source nebude spokojena s myšlenkou vložení proprietárního kódu do jádra. Pokyny k jádru Linuxu uvádějí, že ovladače musí mít licenci GPL, aby mohly být zahrnuty do jádra. Poukazují také na to, že pokud změna ovladače způsobí chybu, vyřeší ji osoba, která chybu vytvořila. To znamená, že méně práce pro výrobce zařízení v dlouhodobém horizontu.
Závěrečné myšlenky na zahrnutí hlavního jádra do Andoridu
zatím je to jen návrh. Existuje velká šance, že Google začne pracovat na projektu, pouze aby ho opustil, jakmile si uvědomí, kolik práce to bude trvat. Stačí se podívat, kolik projektů Google již opustil.
Android Police udělal dobrý bod tím, že zmínil, že Google pracuje na svém operačním systému Fuchsia, který se zdá, že má za cíl nahradit Android jednoho dne.
Otázkou tedy je, který monumentální úkol se Google pokusí dokončit, spustit Android s hlavním linuxovým jádrem nebo dokončit práci na jejich jednotné výměně za Android? Na to může odpovědět jen čas.