核心總覽

Android 核心是以上游程式庫為基礎 Linux 長期支援 (LTS) 核心。Google 的長期支援 核心會與 Android 專用的修補程式結合,形成所謂的 Android 常見核心 (ACK)

較新的 ACK (5.4 以上版本) 又稱為 GKI 核心。GKI 核心支援 區隔各硬體通用的一般核心核心程式碼與 GKI 模組 特定硬體 供應商模組

GKI 核心會與硬體專用供應商模組互動,其中包含系統 使用晶片 (SoC) 和主機板專屬程式碼GKI 核心與供應商模組之間的互動 核心模組介面 (KMI) 啟用,由多個符號清單組成,指出 以及供應商模組所需的全域資料圖 1 顯示了 GKI 核心和供應商 模組架構:

GKI 架構
圖 1.GKI 架構

核心詞彙表

本節包含核心說明文件中使用的術語。

核心類型

Android 常見核心 (ACK)
是 LTS 核心下游的核心,當中包含 Android 感興趣的修補程式 尚未合併至 Linux 主系列或長期支援 (LTS) 核心的社群。 較新的 ACK (5.4 以上版本) 仍稱為 GKI 核心,因為這類 ACK 支援 各硬體通用的通用核心程式碼與各硬體通用的 GKI 模組的區隔。
Android 開放原始碼計畫 (AOSP) 核心
請參閱「Android 常見核心」。
功能核心
保證會實作平台發布功能的核心。適用對象 以 Android 12 為例,這兩個功能核心為 android12-5.4 和 android12-5.10。 Android 12 功能無法向後移植至 4.19 核心。與特徵集會相當類似 並在 Android 11 上搭載 4.19 版,並升級至 Android 12 的裝置上。
一般核心核心
GKI 核心在所有裝置上通用的部分。
通用核心映像檔 (GKI) 核心
任何較新的 (5.4 以上版本) ACK 核心 (目前僅限 aarch64)。這個 核心包含兩個部分:核心 GKI 核心,提供所有裝置通用的程式碼和 GKI 模組 由 Google 開發,可在適用情況下動態載入的裝置。
核心模組介面 (KMI) 核心
請參閱 GKI 核心
啟動核心
核心,可用於啟動特定 Android 平台版本的裝置。適用對象 以 Android 12 為例,有效的啟動核心為 4.19、5.4 和 5.10。
長期支援 (LTS) 核心
支援 2 至 6 年的 Linux 核心。長期支援 核心每年會發布一次,也是各核心的基礎 Google 的ACK

分支版本類型

ACK KMI 核心分支版本
建構 GKI 核心的分支版本。例如 android12-5.10 及 android13-5.15
Android 主系列
Android 功能的主要開發分支。建立新的 LTS 時 核心則宣告上游,對應的新 GKI 核心就是 從 android-mainline
Linux 主線
上游 Linux 核心 (包括 LTS 核心) 的主要開發分支版本。

其他術語

認證的開機映像檔
核心是以二進位格式 (boot.img) 推送到裝置上,並刷新到裝置上。 這張圖片內含內嵌憑證,且 Google 可以 檢查裝置是否隨附通過 Google 認證的核心。
動態載入的核心模組 (DLKM)
可在裝置開機期間動態載入的模組, 裝置。GKI 和供應商模組皆為 DLKM 類型。DLKM 在 .ko 中發布 形式,可以是驅動程式,也可以提供其他核心功能。
GKI 專案
Google 專案將常見的核心核心分離,以解決核心零散問題 功能,將供應商專屬的 SoC 和主機板支援,轉換成可載入的模組。
通用核心映像檔 (GKI)
經 Google 認證的開機映像檔,內含以 GKI 核心 ACK 來源樹狀結構,適合用於刷新至 Android 裝置。
公斤
GKI 核心和允許供應商模組之間的介面 更新模組,獨立於 GKI 核心之外。這個介面由核心組成 函式和全球資料,但使用 個別合作夥伴的符號清單。
GKI 模組
由 Google 建立的核心模組,可以在適用情況下動態載入在裝置上。 這些模組是以 GKI 核心的構件建構而成, 與 GKI 一起做為 system_dlkm_staging_archive.tar.gz 封存。GKI 模組 由 Google 使用核心建構時間金鑰組簽署,而且只與 GKI 相容 建構容器
供應商模組
由合作夥伴開發的硬體專屬模組,內含 SoC 和裝置專屬的模組 功能。供應商模組是一種可動態載入的核心模組。

後續步驟