浅谈安卓内核的碎片化

浅谈安卓内核的碎片化

💡 原文中文,约2400字,阅读约需6分钟。
📝

内容提要

谷歌通过GKI项目解决了安卓内核的碎片化问题。GKI内核统一了核心内核并将SoC和板级支持移至可加载模块中,提供了稳定的内核模块接口。在非GKI时期,厂商内核的碎片化问题严重,导致内核碎片化。AOSP通用内核是kernel.org内核的下游,供应商和OEM内核添加了设备驱动和私有特性。

🎯

关键要点

  • 谷歌通过GKI项目解决了安卓内核的碎片化问题。
  • GKI内核统一了核心内核并将SoC和板级支持移至可加载模块中。
  • GKI内核提供了稳定的内核模块接口(KMI),模块和内核可以独立更新。
  • GKI 2.0要求搭载Android S及以上版本的设备必须附带GKI内核。
  • GKI内核不包含SoC专用代码或板卡专用代码,支持通刷同内核大版本。
  • 非GKI时期内核版本为4.x或3.x,厂商内核碎片化严重。
  • AOSP通用内核是kernel.org内核的下游,包含与Android相关的补丁程序。
  • 功能内核和启动内核是AOSP通用内核的两种类型。
  • 厂商不升级内核版本导致Android框架代码必须支持多个内核版本。
  • 供应商内核在AOSP内核基础上添加设备驱动和特性。
  • OEM内核在供应商内核基础上添加大量私有特性,通常不及时开源。
➡️

继续阅读