Google, 2023'ten itibaren Android'deki Linux çekirdeği özellikleri için "öncelikle yukarı yönde" geliştirme modeline geçmeyi planlıyor. Daha fazlasını öğrenmek için okumaya devam edin.
Aynı cümlede "Android" ve "parçalanma" kelimelerini gördüğünüzde muhtemelen aklınız hemen şu konuya atlar: Android sürümü dağıtım tablosu. Çoğu insanın Android işletim sistemi güncellemelerinin yavaş yavaş dağıtıldığından şikayet ederken işaret ettiği birkaç varlık var, ancak Google'ın bu konuda yapabileceği çok şey var. güç OEM'ler güncellemeleri daha hızlı geliştirip kullanıma sunacak. Ancak Google'ın yapabileceği şey, geliştirme süresini ve dolayısıyla güncellemeleri sunma maliyetini azaltmaktır.
Google'ın geliştirme yükünü azaltmaya yönelik uzun vadeli projesindeki ilk büyük girişim Proje Tiz. 2017'de Android 8.0 Oreo ile birlikte duyurulan Project Treble, işletim sistemi çerçevesini satıcı uygulamasından (HAL'ler ve cihaza özel Linux çekirdek çatalı) ayırarak Android'i modüler hale getirdi. Bu, Android OEM'lerinin, satıcıların güncellenmiş kodlarına ihtiyaç duymadan en son sürümü başlatabilmeleri nedeniyle işletim sistemlerini en son AOSP çerçevesi üzerine yeniden kurmalarını kolaylaştırdı. Sonuç olarak, OEM'ler özel Android çatallarını eskisinden daha hızlı hazırlayabildi ve buna bağlı olarak önemli işletim sistemi güncellemelerini daha hızlı bir şekilde sunabildi.
Google'ın planlarındaki bir sonraki adım, güncellemelerin önemli Android bileşenlerine dağıtımını kolaylaştırmaktı. Google bu girişime çağrıda bulundu Proje Ana Hattı 2019'da Android 10 ile birlikte tanıtıldığında. Google esasen temel işletim sistemi bileşenlerinin kontrolünü ele geçirdi ve OEM'lerin bunları değiştirmesini yasakladı. Daha sonra, OEM'lerin yamaları kendilerinin uygulamasını beklemek zorunda kalmadan bu temel bileşenlere yönelik güncellemeleri uzaktan sunabilmek için Google Play aracılığıyla bir dağıtım mekanizması kurdular. Mainline, cihazların önemli işletim sistemi bileşenlerinin güncellenmiş sürümlerini alma hızını büyük ölçüde iyileştirerek bir bütün olarak Android ekosisteminin güvenliğini artırdı.
Ancak bundan sonra gelecek olan şey daha da önemli ve tartışmasız Google'ın uzun vadeli stratejisinin en önemli parçası. Daha önce Treble'ın işletim sistemi çerçevesini Android'den ayırarak Android'i nasıl modüler hale getirdiğini belirtmiştik. satıcı uygulamasına, bu satıcının bir parçası olarak "cihaza özel Linux çekirdek çatalını" dahil ettik kod. Masaüstü Linux'a aşina olan herkes burada bir sorun olduğunu anlayacaktır: Neden kapalı kaynak satıcı koduyla birleştirilmiş? Sorun şu ki, Android cihazlar Linux çekirdeğiyle birlikte gelirken, bu çekirdek pay ağaç dışı koddan.
Oraya nasıl ulaştık? Sorun, Google yazılım mühendisi Todd Kjos tarafından şu adreste özetlenmiştir: bu yılın Linux Tesisatçıları Konferansı (aracılığıyla ArsTechnica), ana hat Linux çekirdeğinin bir Android cihaza gönderilmeden önce birkaç kez çatallanmasıdır. Google, her ana hat Linux çekirdeğini bir "Android Ortak ÇekirdeğiAna hat sürümünü yakından takip eden ancak Android'e özgü birkaç yama ekleyen "dal. Qualcomm, MediaTek ve Samsung gibi SoC satıcıları daha sonra çatallanıyor O Yaptıkları her SoC için çekirdek. OEM'ler daha sonra SoC'ye özgü çekirdeği alır ve göndermek istedikleri belirli donanıma yönelik desteği uygulamak için ek yamalar ekler.
Bu değişikliklerden dolayı"Bir cihazda çalışan kodun %50'ye kadarı ağaç dışı koddur (yukarı akışlı Linux veya AOSP ortak çekirdeklerinden değil)", Google'a göre. Bu cihazlardaki büyük miktardaki ağaç dışı kod, yukarı yöndeki değişiklikleri birleştirmeyi uzun ve zorlu bir süreç haline getiriyor. OEM'lerin Linux çekirdeğinde keşfedilen güvenlik açıklarına yama uygulamak için daha fazla çalışması gerektiğinden, bu durum cihaz güvenliği açısından zararlıdır. Üstelik bu, çoğu Android cihazının eski çekirdek sürümlerinde kalmasına neden oluyor, bu da yeni Linux çekirdeği özelliklerini kaçırdıkları anlamına geliyor.
Bu sorunu çözmek amacıyla Google, aslında doğrudan bir ACK dalından derlenen bir çekirdek olan Android Genel Çekirdek Görüntüsü (GKI) üzerinde çalışıyor. GKI, SoC satıcısını ve OEM özelleştirmelerini eklenti modüllerine yalıtarak ağaç dışı kodu ortadan kaldırır ve Google'ın çekirdek güncellemelerini doğrudan son kullanıcıya iletmesine olanak tanır. Bir yılı aşkın bir süredir Google, GKI güncellemelerini Play Store aracılığıyla sunmanın bir yolu üzerinde çalışıyor. Mainline modülünün kullanımı yoluyla.
Kaynaklarımıza göre, aşağıdakilerle başlayan cihazlar: Android 12 ve Linux çekirdeği 5.10 ile birlikte gönderildiğinde Google imzalı bir önyükleme görüntüsü dağıtılmalıdır. Google'ın tamamen kendine ait Piksel 6 Seri, kutudan Android 12 ile çıkacak ve Linux çekirdeği 5.10 ile gönderilecek, dolayısıyla iki telefon, GKI ile birlikte gönderilen ilk kitlesel pazar cihazları olabilir.
Ayrıca Google'dan Todd Kjos, şirketin yeni Linux çekirdek özellikleri için "öncelikle yukarı yönde" geliştirme modeline geçmeyi planladığını açıkladı. Bu, Google'ın yeni kodun ana hat Linux çekirdeğine ilk önce yerleştirilmesini sağlamasına yardımcı olacak ve bu da Android cihazlara daha fazla ağaç dışı kod yerleştirilmesinden kaynaklanan gelecekteki teknik borcu azaltacaktır.
Bu hafta Linux Tesisatçıları Konferansı'nda Kjos şunları söyledi: "Ağaç dışı modüller kullanım durumumuz açısından gerçekten önemli olduğundan, her zaman bir dizi dışa aktarımın ve mevcut olana ek veya farklı olan bazı şeylerin olmasını bekliyoruz. ama tüm bu proje mümkün olduğu kadar çok ağaç dışı yamalardan kurtulmaya ve mümkün olduğu kadar çok şeyi hizalamaya yönelik çok yıllı bir proje. yukarı akıntı." Google, mevcut özelliklerin güncellenmesine ve tedarikçi değişikliklerini izole etmeye yönelik çalışmalarını 2022 sonuna kadar tamamlamayı hedefliyor Şirket, 2023'ten itibaren bu tür sorunlardan kaçınmak için bu "önce üretime yönelik" geliştirme modelini benimsemeyi planlıyor. gelecek.