Android 系统曾因包含大量来自下游的补丁以及各种供应商/设备的内核树而遭人诟病,因为这些下游补丁增加了维护难度和操作系统的碎片化程度。
不过近年来,谷歌改变了策略,更多的代码被合并到了上游,谷歌也在逐渐转向使用 Android Generic Kernel Image (GKI) 作为其所有产品内核的基础,以进一步减少碎片化的情况。展望未来,谷歌现在正在谈论采用“上游优先”的策略——将功能引入到 Android 系统前先将其推到上游的主线内核。
谷歌工程师 Todd Kjos 在 Linux Plumbers Conference (LPC2021) 峰会上谈论了谷歌的 GKI 计划,他表示,随着 Android 12 以及基于 Linux 5.10 的 GKI 镜像,他们已经将碎片化减少到“几乎消除”的程度。在 Android 12 GKI 中,大多数供应商/OEM 内核功能要么被引入上游 Linux 内核,要么被孤立在供应商模块/钩子(hooks)中,再则就是被合并到 Android Common Kernel。
谷歌在 GKI 方面取得了良好的进展,同时也确保供应商适应新的方法以减少内核的混乱。但最令人兴奋的可能是他们对 2023 至 2024 年进一步减少技术债务的展望。谷歌将追求“为新功能采用上游优先开发模型”,确保新代码首先进入主线 Linux 内核,而不是直接将目标合并进 Android 源代码树中。
谷歌还承诺“努力将 Android Common Kernel 中的所有 out-of-tree 补丁上传到上游”。
猜你喜欢:暂无回复。