Android 8.0 中引入了模块化内核,将设备内核分为系统芯片 (SoC)、设备和板专属组件。这项变更使得原始设计制造商 (ODM) 和原始设备制造商 (OEM) 可以在独立的板专属树中使用板专属功能、驱动程序等,从而使他们可以替换通用内核配置、以内核模块的形式添加新的驱动程序等。
Android 中的模块化内核支持包括:
- 对于独立 SoC 和 OEM/ODM 内核开发的平台支持。
Android 9 及更高版本建议以设备中的内核模块的形式编译和推出所有板专属代码。因此:
- 所有平台都应支持devicetree或高级配置与电源接口 (ACPI),以便描述所有无法检测到的设备。
- 所有基于设备树的平台都应将板专属设备节点作为叠加层添加到内核设备树中。
- 在供应商测试套件 (VTS) 中支持应用二进制接口 (ABI) 和应用编程接口 (API) 测试。这些测试能够确保指定内核可以运行 Android 开源项目 (AOSP) 框架。
- 每个 Android 版本的最低内核版本。
- 对于生成 Android 供应商接口 (VINTF) 内核对象的支持。