Google работи с Qualcomm, за да улесни доставянето на софтуерни актуализации, позволявайки 4 версии на Android OS и 4 години актуализации за сигурност.
Преди повече от 3 години Google обяви Project Treble, основно преструктуриране на Android, предназначено да ускори софтуерните актуализации. Докато архитектурата, въведена от Project Treble, помогна на OEM производителите да ускорят доставката на основни Актуализации на операционната система Android и месечни корекции за сигурност, има неблагоприятен ефект върху доставчиците на SoC като Qualcomm. Всъщност Treble всъщност увеличи сложността и по този начин инженерните разходи, свързани с предоставянето на поддръжка за актуализиране на Android OS за всеки даден чипсет. Това ограничи продължителността на поддръжката, която Qualcomm може да предостави за своите SoC, но това скоро ще се промени. Всички Snapdragon SoC, стартиращи с Android 11 или по-нова версия - от началото със Snapdragon 888, Qualcomm ще поддържа 3 актуализации на версията на Android OS (стартираща версия + 3 надстройки с букви), както и 4 години актуализации за сигурност. Това е допълнителна година от предвидената преди за техните водещи чипсети от серия 800.
Днешното съобщение е важно, но не може да бъде разбрано без предварителни познания за това, което Google се опита да постигне с Project Treble преди 3 години.
Treble създаде разделение между рамката на Android OS (включително всички потребителски кодове, API и системни процеси, които приложенията взаимодействат с) и специфичен за устройството софтуер на ниско ниво (включително основното ядро на Linux и слоеве на хардуерна абстракция, или HAL). Специфичният за устройството софтуер от ниско ниво комуникира с рамката на Android OS чрез добре дефиниран, стабилен интерфейс на доставчика. Всяка версия на Android OS гарантира обратна съвместимост с внедряването на доставчика, което Google гарантира чрез използването на тестовия пакет на доставчика (VTS), стандартизиран тестов пакет за съответствие. Това означава, че например рамката на Android 11 OS е обратно съвместима с внедряването на доставчика, предназначено за Android 10. Всъщност за всяка нова версия на Android Google публикува Generic System Images (GSIs), изградени от източника системни изображения, които са обратно съвместими с последните 3 версии на внедрявания на доставчици. Когато OEM създава ново устройство с Android, той е свободен да модифицира рамката на Android OS, за да въведе нова собствени функции и API, но те трябва да гарантират, че внедряването на доставчика на устройството е съвместимо с GSI.
Това е основно начинът, по който Treble намалява фрагментацията и ускорява доставката на нови актуализации на ОС — има много по-малко счупвания при сдвояване на рамката на Android OS (която е отворена източник и предоставен от Google) и специфичния за устройството софтуер от ниско ниво (който често е със затворен код и се предоставя по договори с доставчици на SoC) благодарение на стабилния доставчик интерфейс. В идеалния случай това означава, че производителите на оригинално оборудване могат да отделят по-малко време за коригиране на грешки с хардуера и повече време за пренасяне на своите промени на системно ниво върху най-новата версия на Android OS. Всъщност, след представянето на Treble, Google казва, че OEM производителите са възприели най-новата версия на Android OS много по-бързо от преди. „По време на стартирането на Android 11 имаше 667 милиона активни потребители на Android 10, 82% от които получиха своята версия на Android 10 чрез актуализация по въздуха (OTA), каза Google.
Тъй като всяка нова версия на Android добавя поддръжка за повече хардуерни функции (ОС трябва да поддържа нови функции за бъдете в крак с бързия напредък на мобилната индустрия), Google трябва да актуализира интерфейса на доставчика за това освобождаване. По този начин компанията определя нови изисквания за HAL и налага нови версии на ядрото на Linux, но те изискват само устройства стартиране с новата версия на Android OS, за да поддържа действително тези промени, засягащи доставчика. Например, ако Google модифицира HAL на камерата на Android, за да поддържа множество сензори за задна камера, само новите устройства, стартирани с новата версия на Android, трябва да поддържат този актуализиран HAL, докато по-старите устройства, надстройвайки се до новата версия, могат да използват повторно своята по-стара реализация на доставчика без тази нова камера HAL изискване. Това намалява цената и сложността – от гледна точка на OEM – за въвеждане на нова версия на Android OS на по-старо устройство. Проблемът обаче е, че този подход въвежда допълнителна сложност за доставчици на SoC като Qualcomm, MediaTek и други.
В резултат на този принцип на проектиране Qualcomm и други доставчици на SoC трябва да поддържат множество комбинации от рамков софтуер на Android OS и реализации на доставчици. Доставчик на SoC, който поддържа 3 поколения версии на Android OS за конкретен чипсет, трябва да поддържа 6 комбинации от рамков софтуер на OS и внедрявания на доставчика. Това е така, защото докато производителите на оригинално оборудване могат да се измъкнат с повторно използване на по-стара реализация на доставчика, за да заобиколят новото HAL и Linux ядро изисквания за версии, доставчиците на SoC трябва да гарантират, че техните внедрявания на доставчици поддържат както старото, така и новото изисквания. Те не могат да избират. Умножете това по десетките чипсети, които доставчикът на SoC трябва да поддържа, и можете да видите как Treble всъщност е увеличил сложността за тях.
Поради тази причина Qualcomm и други доставчици на SoC обикновено предоставят само максимум 2 надстройки на букви на операционната система и 3 години актуализации на сигурността за конкретен чипсет. Въпреки че не съм запознат с точните разходи, предполагам, че не е икономически осъществимо за доставчици на SoC като Qualcomm да поддържат чипсети за много по-дълъг период от това. Виждали сме Qualcomm и други доставчици на SoC понякога да предоставят поддръжка за по-дълго, но това зависи от търсенето от OEM производителите за да стане икономичен. Ако не съществува такова търсене, тогава OEM производителите трябва да поемат тежестта на разходите за разработка, за да изведат нова версия на Android - и това не е лесен подвиг. Но благодарение на обединените усилия на Google и Qualcomm, последният вече ще поддържа 4 Android OS версии и 4 години актуализации на защитата за избрани чипсети Snapdragon, започвайки с Qualcomm Snapdragon 888.
За да направи това възможно, Google разшири „принципа без ретроактивност“ на Project Treble към SoC в допълнение към устройствата. Това означава, че новите изисквания за версия на ядрото на HAL и Linux няма да бъдат със задна дата за SoC. Така че, например, SoC, който стартира с Android 11 (като Snapdragon 888) може да използва повторно внедряването на същия доставчик, за да поддържа Android 12 чрез Android 14. По този начин доставчиците на SoC могат да разработят единичен пакет за поддръжка на платка (BSP) за конкретен чипсет, който да се разпространява на OEM производители, вместо да поддържат множество версии на BSP, които трябва да се актуализират с всеки нов Android освобождаване. Това драстично намалява инженерните разходи, свързани с поддръжката на Android на конкретен чипсет, като дава възможност на доставчици на SoC като Qualcomm да поддържат своите чипсети за по-дълго време.
Google също работи с Qualcomm, за да гарантира, че последният използва повторно един и същ рамков софтуер на ОС в множество Qualcomm чипсети, допълнително намалявайки броя на комбинациите от внедряване на операционна система и доставчик, които Qualcomm трябва поддържа. Доставчиците на SoC в момента модифицират кода на рамката на AOSP и изграждат свои собствени версии на общи системни изображения. Qualcomm, например, се нарича QSSI, докато MediaTek се нарича MSSI. Тези специфични за SoC системни образи вече ще бъдат гарантирани, че са съвместими с множество чипсети, както и с по-стар софтуер на доставчик, подобно на AOSP GSI на Google.
Устройствата с Qualcomm Snapdragon 888 се очаква да бъдат пуснати много скоро, като се започне със серията Xiaomi Mi 11 и Samsung Galaxy S21. Въпреки че се надяваме, че съобщението на Google и Qualcomm означава, че всички устройства със Snapdragon 888 ще получат 3 години операционна система Android и актуализации на корекции за сигурност, няма гаранция, че това ще бъде така. OEM производителите все още трябва да инвестират значителни суми, за да разработят и разпространят нови версии на операционната система — но е много по-вероятно да се случи сега, когато самите Qualcomm ще поддържат 4 версии на Android OS. Надяваме се, че един или повече OEM производители ще се възползват от днешното съобщение, за да обявят разширена софтуерна поддръжка за своите бъдещи водещи телефони, захранвани от Snapdragon 888. Повечето OEM производители предлагат само 2 години актуализации на Android в момента, докато Samsung и Google обещават 3 години. Това все още е твърде малко в сравнение с Apple и с право беше извиквано много, много пъти и ще продължи да бъде извиквано, докато разликата не бъде съкратена.
Що се отнася до другите доставчици на SoC, Google преговаря с тях за прилагане на този нов принцип без ретроактивност, така че те също да могат да предоставят разширена софтуерна поддръжка за своите чипсети. Нямаме потвърждение от MediaTek или други доставчици на SoC, но не виждаме причина те да не се присъединят към тази идея – поне за новите чипсети. Според Google те очакват, че най-вече само новопуснати SoC ще се възползват от тях промени, така че не очаквайте някое от настоящите ви устройства да получи разширена софтуерна поддръжка поради днешната съобщение.
Тази статия беше актуализирана в 13:50 ET на 16.12.2020 г., за да промени „устройства“ в заглавието на „чипсети“, за да отрази по-добре къде ще влязат в сила промените. Допълнителна информация е добавена към статията с любезното съдействие на Google.
Тази статия беше актуализирана в 14:10 ET, за да отрази, че Google и Qualcomm обещават поддръжка за 4 Android Версии на операционната система — което означава стартова версия плюс 3 години актуализации на операционната система Android — вместо 4 години операционна система актуализации. Qualcomm обаче обещава да предостави 4 години актуализации за сигурност.