Çekirdeğe genel bakış

Android çekirdeği, yukarı akışlı Linux Uzun Süreli Desteklenen (LTS) çekirdeğini temel alır. Google'da LTS çekirdekleri, Android'e özgü yamalarla birleştirilerek Android Ortak Çekirdekleri (ACK'ler) olarak bilinenleri oluşturur.

Daha yeni ACK'ler (sürüm 5.4 ve üzeri) GKI çekirdekleri olarak da bilinir. GKI çekirdekleri, donanımdan bağımsız genel çekirdek çekirdek kodunun ve GKI modüllerinin donanıma özgü satıcı modüllerden ayrılmasını destekler.

GKI çekirdeği, çip üzerinde sistem (SoC) ve karta özel kod içeren donanıma özel satıcı modülleriyle etkileşime girer. GKI çekirdeği ile satıcı modülleri arasındaki etkileşim, satıcı modüllerinin gerektirdiği işlevleri ve genel verileri tanımlayan sembol listelerinden oluşan Çekirdek Modül Arayüzü (KMI) tarafından etkinleştirilir. Şekil 1, GKI çekirdeğini ve satıcı modülü mimarisini göstermektedir:

GKI mimarisi
Şekil 1. GKI mimarisi

Çekirdek sözlüğü

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

Çekirdek türleri

Android Ortak Çekirdeği (ACK)
Bir LTS çekirdeğinin aşağı akışında yer alan ve Linux ana hattı veya Uzun Süreli Desteklenen (LTS) çekirdekleriyle 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
Bkz. Android Ortak Çekirdeği.
Ö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 çekirdeklerine desteklenemez; özellik seti, R'de 4.19 ile başlatılan ve S'ye yükseltilen bir cihaza benzer olacaktır).
genel çekirdek çekirdeği
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) ACK çekirdeği (şu anda yalnızca aarch64). Bu çekirdek iki bölümden oluşur: Tüm cihazlarda ortak koda sahip çekirdek GKI çekirdeği ve Google tarafından geliştirilen ve uygun olduğunda cihazlara dinamik olarak yüklenebilen GKI 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'du.
Uzun Süreli Desteklenen (LTS) çekirdek
2 ila 6 yıl boyunca desteklenen bir Linux çekirdeği. LTS çekirdekleri yılda bir kez yayınlanır ve Google'ın ACK'lerinin her birinin temelini oluşturur.

Ş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ı yönde bildirildiğinde, karşılık gelen yeni GKI çekirdeği android-ana hattan dallanır.
Linux ana hattı
LTS çekirdekleri de dahil olmak üzere yukarı akışlı 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 cihaza aktarıldı. Bu görüntü, Google'ın cihazın Google tarafından onaylanmış bir çekirdekle birlikte gönderildiğini doğrulayabilmesi için yerleşik sertifikalar içermesi anlamında sertifikalıdır.
Dinamik olarak yüklenebilir çekirdek modülü (DLKM)
Cihazın ihtiyaçlarına bağlı olarak cihaz ö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 sunabilir.
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)
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 flaş edilmeye uygun, Google tarafından onaylanmış bir önyükleme görüntüsü.
KMI
GKI çekirdeği ile 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 arayüz, iş ortağı başına sembol listeleri kullanılarak satıcı/OEM bağımlılıkları olarak tanımlanan çekirdek işlevlerinden ve genel verilerden oluşur.
GKI modülleri
Uygun olduğunda cihazlara dinamik olarak yüklenebilen, Google tarafından oluşturulan çekirdek modülleri. Bu modüller, GKI çekirdeğinin yapıları olarak oluşturulmuştur ve GKI ile birlikte system_dlkm_staging_archive.tar.gz arşivi olarak teslim edilir. GKI modülleri, çekirdek oluşturma zamanı anahtar çifti kullanılarak Google tarafından imzalanır ve yalnızca oluşturuldukları GKI çekirdeğiyle uyumludur.
Satıcı modülü
Bir iş ortağı tarafından geliştirilen ve SoC ve cihaza özgü işlevler içeren, donanıma özgü bir modül. Satıcı modülü, dinamik olarak yüklenebilen bir çekirdek modülü türüdür.

Sıradaki ne?