Çekirdeğe genel bakış

Android çekirdeği, adresinde bulunan bir yukarı akış Linux Uzun Vadeli Destekli (LTS) çekirdeğine dayanmaktadır. Google'da, LTS çekirdekleri, Android Ortak Çekirdekleri (ACK'ler) olarak bilinenleri oluşturmak için Android'e özgü yamalar ile birleştirilir.

Daha yeni ACK'ler (sürüm 5.4 ve üzeri), donanımdan bağımsız Genel Çekirdek Çekirdek kodunun ve donanımdan bağımsız GKI modüllerinin ayrılmasını destekledikleri için GKI çekirdekleri olarak da bilinir. GKI çekirdeği, bir çip üzerinde sistem (SoC) ve karta özel kod içeren donanıma özgü satıcı modülleriyle etkileşime girer. GKI çekirdeği ve satıcı modülleri arasındaki etkileşim, satıcı modüllerinin gerektirdiği işlevleri ve global verileri tanımlayan sembol listelerinden oluşan Çekirdek Modül Arayüzü (KMI) tarafından etkinleştirilir. Şekil 1, GKI çekirdeği ve satıcı modülü mimarisini göstermektedir: GKI çekirdeği ve satıcı modülü mimarisi

Şekil 1. GKI çekirdeği ve satıcı modülü mimarisi

Çekirdek sözlüğü

Bu bölüm, çekirdek belgelerinde kullanılan terimleri içerir.

Çekirdek türleri

Android Ortak Çekirdeği (ACK)
LTS çekirdeğinin akış aşağısında olan ve Linux ana hattı veya Uzun Vadeli Desteklenen (LTS) çekirdeklerle birleştirilmemiş Android topluluğunun ilgisini çeken yamalar içeren bir çekirdek. Daha yeni ACK'ler (sürüm 5.4 ve üzeri), donanımdan bağımsız Genel Çekirdek kodu ile donanımdan bağımsız GKI modüllerinin ayrılmasını destekledikleri için GKI çekirdekleri olarak da bilinir.
Android Açık Kaynak Projesi (AOSP) çekirdeği
Android Ortak Çekirdeğine bakın.
Özellik Çekirdeği
Platform sürüm özelliklerinin uygulanmasının garanti edildiği bir çekirdek. Örneğin, Android 12'de iki özellik çekirdeği android12-5.4 ve android12-5.10 idi. Android 12 özellikleri 4.19 çekirdeğe geri aktarılamaz; özellik seti, R'de 4.19 ile başlatılan ve S'ye yükseltilen bir cihaza benzer olacaktır).
genel çekirdek çekirdek
GKI çekirdeğinin tüm cihazlarda ortak olan kısmı.
Genel Çekirdek Görüntüsü (GKI) çekirdeği
Daha yeni (5.4 ve üzeri) herhangi bir ACK çekirdeği (şu anda yalnızca aarch64). Bu çekirdeğin iki bölümü vardır: Tüm cihazlarda ortak koda sahip çekirdek GKI çekirdeği ve uygun olduğunda cihazlara dinamik olarak yüklenebilen Google tarafından geliştirilen GKI çekirdek modülleri.
Çekirdek Modül Arayüzü (KMI) çekirdeği
GKI çekirdeğine bakın.
Çekirdeği Başlat
Belirli bir Android platformu sürümü için bir cihazı başlatmak için geçerli olan bir çekirdek. Örneğin, Android 12'de geçerli başlatma çekirdekleri 4.19, 5.4 ve 5.10 idi.
Uzun Süreli Desteklenen (LTS) çekirdek
2 ila 6 yıl arasında desteklenen bir Linux çekirdeği. LTS çekirdekleri yılda bir kez yayınlanır ve Google'ın ACK'lerinin her birinin temelidir.

Şube türleri

ACK KMI çekirdek dalı
GKI çekirdeklerinin oluşturulduğu dal. Örneğin, android12-5.10 ve android13-5.15.
Android ana hat
Android özellikleri için birincil geliştirme dalı. Yeni bir LTS çekirdeği yukarı akış olarak bildirildiğinde, ilgili yeni GKI çekirdeği android ana hattan dallanır.
Linux ana hattı
LTS çekirdekleri de dahil olmak üzere yukarı akış Linux çekirdekleri için birincil geliştirme dalı.

Diğer terimler

Sertifikalı önyükleme görüntüsü
Çekirdek, ikili biçimde ( boot.img ) teslim edildi ve aygıtta parladı. Bu resim, Google'ın cihazın Google tarafından onaylanmış bir çekirdekle birlikte gönderildiğini doğrulayabilmesi için gömülü sertifikalar içermesi anlamında sertifikalandırılmıştır.
Dinamik olarak yüklenebilir çekirdek modülü (DLKM)
Aygıtın gereksinimlerine bağlı olarak aygıt önyüklemesi sırasında dinamik olarak yüklenebilen bir modül. GKI ve satıcı modüllerinin her ikisi de DLKM türüdür. DLKM'ler .ko biçiminde yayınlanır ve sürücü olabilir veya diğer çekirdek işlevlerini sağlayabilir.
GKI projesi
Ortak çekirdek çekirdek işlevselliğini satıcıya özel SoC ve kart desteğinden yüklenebilir modüllere ayırarak çekirdek parçalanmasını ele alan bir Google projesi.
Genel Çekirdek Görüntüsü (GKI)
Bir ACK kaynak ağacından oluşturulmuş bir GKI çekirdeği içeren ve bir Android cihazının önyükleme bölümüne flash'lanmaya uygun, Google tarafından onaylanmış bir önyükleme görüntüsü.
KMI
GKI çekirdeği ve satıcı modülleri arasında, satıcı modüllerinin GKI çekirdeğinden bağımsız olarak güncellenmesine olanak tanıyan bir arayüz. Bu arabirim, ortak başına simge listeleri kullanılarak satıcı/OEM bağımlılıkları olarak tanımlanan çekirdek işlevlerinden ve genel verilerden oluşur.
GKI çekirdek modülü
Uygun olduğunda cihazlara dinamik olarak yüklenebilen, Google tarafından oluşturulmuş dinamik olarak yüklenebilir modüller. Bu modüller GKI çekirdeği ile oluşturulmuştur ve system_dlkm görüntüsü olarak GKI ile birlikte teslim edilir. GKI çekirdek modülleri, çekirdek oluşturma zamanı anahtar çifti kullanılarak Google tarafından imzalanır ve yalnızca oluşturuldukları genel çekirdek çekirdekle uyumludur. GKI çekirdek modülleri bir tür DLKM
.
Satıcı modülü
Bir iş ortağı tarafından geliştirilen ve SoC ve cihaza özel işlevsellik içeren donanıma özel bir modül. Satıcı modülü, dinamik olarak yüklenebilir bir çekirdek modülü türüdür.

Sıradaki ne?