Google работи върху използването на обикновено Linux ядро ​​в Android

На последната конференция на Linux Plumbers 2019 Google Той каза, относно развитието инициативи относно прехвърлянето на промените, разработени в ядрото на Linux, към основното ядро ​​на Linux версия на ядрото за платформата Android. Крайната цел е да се позволи на Android да използва едно общо ядро, вместо да подготвя отделни компилации за всяко устройство въз основа на специфичен за Android клон Общо ядро ​​на Android. Тази цел вече е частично постигната и на конференцията беше демонстриран смартфонът Xiaomi Poco F1 Android с фърмуер, базиран на обичайното немодифицирано ядро ​​на Linux.

След като проектът е готов, доставчиците ще бъдат помолени да предоставят базово ядро, базирано на основното ядро ​​на Linux. Компонентите за хардуерна поддръжка ще се доставят от доставчици само под формата на допълнителни модули на ядрото, без да се прилагат пачове към ядрото. Модулите трябва да са съвместими с основното ядро ​​на ниво пространство от имена на символи на ядрото. Всички промени, засягащи основното ядро, ще бъдат повишени към upstream. За да се поддържа съвместимост със собствени модули в рамките на LTS клонове, се предлага да се поддържа API и ABI на ядрото в стабилна форма, което ще поддържа съвместимостта на модула с актуализации за всеки общ клон на ядрото.

Google работи върху използването на обикновено Linux ядро ​​в Android

В течение на една година функции като подсистемата PSI (Pressure Stall Information) за анализиране на информация за времето на изчакване за получаване на различни ресурси (CPU, памет, I/O) и псевдофайловата система BinderFS за комуникация между процесите механизъм са прехвърлени към основното ядро ​​на Linux от изданието на ядрото на Android Binder и енергийно ефективен планировчик на задачи EAS (Energy Aware Scheduling). В бъдеще се планира Android да бъде прехвърлен от специфичния планировчик SchedTune към новата подсистема UtilClamp, разработена в ARM, базирана на cgroups2 и стандартни механизми на ядрото.

Google работи върху използването на обикновено Linux ядро ​​в Android

Нека припомним, че досега ядрото за платформата Android премина през няколко етапа на подготовка:

  • Въз основа на основните LTS ядра (3.18, 4.4, 4.9 и 4.14) беше създаден клон на „Android Common Kernel“, в който бяха прехвърлени специфични за Android корекции (преди това размерът на промените достигна няколко милиона реда, но наскоро промените са намалени до няколко хиляди реда код).
  • Въз основа на „Общото ядро ​​на Android“, производители на чипове като Qualcomm създадоха „SoC ядро“, което включва добавки за поддръжка на хардуера.
  • Въз основа на ядрото на SoC, производителите на устройства създадоха ядрото на устройството, което включва промени, свързани с поддръжката на допълнително оборудване, екрани, камери, звукови системи и др.

Google работи върху използването на обикновено Linux ядро ​​в Android

По същество всяко устройство има свое собствено ядро, което не може да се използва на други устройства. Такава схема значително усложнява внедряването на актуализации за премахване на уязвимостите и прехода към нови клонове на ядрото. Например, най-новият смартфон Pixel 4, пуснат през октомври, се доставя с Linux ядро ​​4.14, пуснато преди две години. Отчасти Google се опита да опрости поддръжката, като популяризира системата Троен, което позволява на производителите да създават универсални компоненти за поддръжка на хардуер, които не са обвързани с конкретни версии на Android и използвани версии на ядрото на Linux. Treble дава възможност да се използват готови актуализации от Google като основа, интегрирайки в тях компоненти, специфични за конкретно устройство.


Източник: opennet.ru

Добавяне на нов коментар