Çekirdeğe genel bakış

Android çekirdeği bir yukarı akışa dayanır Linux Uzun Vadeli Desteklenen (LTS) çekirdeği. Google'da, LTS çekirdekler Android'e özgü yamalarla bir araya getirilerek Android Ortak Çekirdekleri (ACK'ler).

Daha yeni ACK'ler (sürüm 5.4 ve sonraki sürümler), GKI çekirdekleri olarak da bilinir. GKI çekirdekleri donanımdan bağımsız genel çekirdek kodunun ayrılması ve GKI modüllerini donanıma özgü sağlayıcı modülleri.

GKI çekirdeği donanıma özgü tedarikçi firma modülleriyle çip (SoC) ve karta özgü bir kod içerir. GKI çekirdeği ile tedarikçi modülleri arasındaki etkileşim: API'yi tanımlayan sembol listelerinden oluşan Çekirdek Modülü Arayüzü (KMI) fonksiyonları ve global verileri içerir. Şekil 1'de, GKI çekirdeği ve tedarikçi gösterilmektedir. modül mimarisi:

GKI mimarisi.
Şekil 1. GKI mimarisi

Kernel sözlüğü

Bu bölümde, çekirdek belgelerinde kullanılan terimler yer alır.

Çekirdek türleri

Android Ortak Çekirdeği (ACK)
Bir LTS çekirdeğinin aşağı akışkan ve Android'e yönelik bazı ilgi alanları içeren çekirdek . Daha yeni ACK'ler (sürüm 5.4 ve sonraki sürümler), donanımdan bağımsız Genel Kernel kodu ile donanımdan bağımsız GKI modüllerinin ayrılması.
Android Açık Kaynak Projesi (AOSP) çekirdeği
Android Ortak Kernel'i inceleyin.
Özellik Çekirdeği
Platformun sürüm özelliklerinin uygulanacağının garanti edildiği bir çekirdek. Örneğin, Örneğin, Android 12'nin iki özellik çekirdeği android12-5.4 ve android12-5.10 idi. Android 12 özellikleri 4.19 çekirdeklerine geri aktarılamaz; özellik kümesinin benzer olması .
genel çekirdek
GKI çekirdeğinin tüm cihazlarda ortak olan kısmı.
Genel Kernel Görüntü (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 kod içeren temel GKI çekirdeği ve GKI modülleri Google tarafından geliştirilmiştir ve uygun olduğunda cihazlara dinamik olarak yüklenebilir.
Kernel Module Interface (KMI) çekirdeği
GKI çekirdeği konusuna bakın.
Kernel'ı Başlat
Belirli bir Android platformu sürümünde cihaz başlatmak için geçerli çekirdek. Örneğin, Örneğin Android 12'nin geçerli lansman çekirdekleri 4.19, 5.4 ve 5.10'du.
Uzun Vadeli Desteklenen (LTS) çekirdek
2 ila 6 yıl boyunca desteklenen bir Linux çekirdeği. LTS çekirdekler yılda bir kez yayınlanır ve bu Google'ın ACK'leri.

Şube türleri

ACK KMI çekirdek dalı
GKI çekirdeklerinin derlendiği dal. Örneğin, android12-5.10 ve android13-5.15 sürümleri dahildir.
Android ana-satır içi
Android özelliklerinin birincil geliştirme dalı. Yeni bir LTS çekirdeği yukarı akış bildirildiğinde karşılık gelen yeni GKI çekirdeği android-mainline'dan dallandı.
Linux ana hattı
LTS çekirdekleri de dahil olmak üzere yukarı akış Linux çekirdeklerinin birincil geliştirme dalı.

Diğer terimler

Sertifikalı başlatma görüntüsü
Çekirdek, ikili biçimde (boot.img) teslim edildi ve cihazda yanıp söndü. Bu resim, Google'ın şunları yapabilmesi için yerleşik sertifikalar içerdiği açısından onaylanmıştır. cihazın Google onaylı bir çekirdekle gönderildiğini doğrulayın.
Dinamik olarak yüklenebilir çekirdek modülü (DLKM)
Cihazın önyüklemesi sırasında cihazın ihtiyaçlarına bağlı olarak dinamik bir şekilde yüklenebilen olanak tanır. Hem GKI hem de tedarikçi modülleri DLKM'nin türüdür. DLKM'ler .ko içinde serbest bırakıldı sürücü olabilirler veya başka çekirdek işlevleri sunabilirler.
GKI projesi
Ortak çekirdek çekirdeği ayırarak çekirdek parçalanmasını ele alan bir Google projesi Bu işlevler, tedarikçiye özel SoC'den ve kart desteğinden yüklenebilir modüllere aktarılır.
Genel Çekirdek Resmi (GKI)
Google onaylı bir GKI çekirdeği içeren ve bir ACK kaynak ağacıdır ve cihazın başlatma bölümüne yanıp sönmeye uygundur. bir Android cihaz.
KMI
GKI çekirdeği ile tedarikçi modüller arasındaki arayüz modüllerin, GKI çekirdeğinden bağımsız olarak güncellenmesi gerekir. Bu arayüz çekirdekten ve kullanılarak tedarikçi/OEM bağımlılığı olarak tanımlanan fonksiyonları ve global verileri her iş ortağı için sembol listelerinde görünür.
GKI modülleri
Google tarafından oluşturulan ve uygun durumlarda cihazlara dinamik olarak yüklenebilen çekirdek modüller. Bu modüller, GKI çekirdeğinin yapıları olarak oluşturulur ve birlikte GKI ile birlikte system_dlkm_staging_archive.tar.gz arşivi. GKI modülleri Google tarafından çekirdek derleme zamanı anahtar çifti kullanılarak imzalanır ve yalnızca GKI ile uyumludur. çekirdeğine sahip olduğunu unutmayın.
Tedarikçi modülü
Bir iş ortağı tarafından geliştirilmiş, çip üzerinde sistem (SoC) ve cihaza özgü olan, donanıma özgü bir modül işlevi görür. Tedarikçi modülü, dinamik olarak yüklenebilen bir çekirdek modülüdür.

Sırada ne var?