Android13 GKI架构开发方式

58 篇文章

已下架不支持订阅

一.GKI简介

GKI:Generic Kernel Image 通用内核映像。
Android13 GMS和EDLA认证的一个难点是google强制要求要支持GKI。GKI通用内核映像,是google为了解决内核碎片化的问题,而设计的通过提供统一核心内核并将SoC和板级驱动从核心内核移至可加载模块中。核心内核为驱动模块提供了稳定的内核模块接口,模块驱动和核心内核可以独立进行更新。内核接口可以通过upstream的方式进行扩展。 Soc和板级厂商在驱动开发时需要使用已经定义的内核接口,如果要新加核心内核接口需要提交给google,这个周期会比较长,所以要提前做好开发准备。


二.什么产品需要使用GKI

使用Android13且需要过GMS认证和EDLA认证的产品。

使用Android12 的RK3588和RK3588S的需要过GMS认证和EDLA认证的产品。

不过GMS认证和EDLA认证的产品不强制要求使用GKI。

三.碎片化的代价

1.安全更新需要耗费大量人力:

Android 安全公告 (ASB) 中引用的安全补丁程序必须向后移植到每个设备内核中。但是,由于存在内核碎片化问题,向正常使用的 Android 设备传播安全修复的代价非常之高。

2.很难合并长期支持的更新:

长期支持 (

已下架不支持订阅

### Android 13 GKI 的实现与兼容性说明 #### 背景概述 Android GKI 是 Google 推出的一项重要技术改进,旨在通过提供通用内核映像(Generic Kernel Image, GKI),增强不同硬件平台之间的可移植性和安全性。这一架构减少了厂商定制内核的需求,从而简化了更新流程并提高了系统的安全补丁分发效率。 在 Android 13 中,GKI 继续演进以支持更广泛的设备和功能需求。其核心目标仍然是提高跨设备的一致性以及减少碎片化问题[^1]。 --- #### 主要特性与实现细节 1. **统一的内核镜像** - 在 Android 13 中,GKI 提供了一个标准化的 Linux 内核版本作为基础镜像。该镜像经过优化,能够适配多种 SoC 和硬件配置。 - 厂商可以通过加载特定于设备的模块来扩展基本功能,而无需修改原始内核源码[^2]。 2. **模块化的驱动程序支持** - 随着 GKI 的发展,越来越多的传统内置驱动被迁移到外部模块中。这些模块可以动态加载到运行中的系统中,允许 OEM 制造商灵活调整硬件支持而不影响主线内核稳定性。 - 这种方法显著降低了因频繁更改内核而导致的安全风险,并促进了更快的安全修复周期。 3. **增强的兼容性测试框架** - 对于 Android 13 设备而言,Google 加强了针对 GKI 的兼容性测试要求。所有基于 v5.10 或更高版本内核的新设备都需完成严格的 CTS (Compatibility Test Suite) 及 VTS (Vendor Test Suite) 认证过程。 - 此外,在某些情况下还可能涉及额外的 GSI (Generic System Image) 测试环节,确保最终产品能够在各种场景下稳定运作。 4. **引入新的分区布局方案** - 如图所示,部分关键区域已被重新定义以便更好地满足现代移动操作系统的要求。例如新增加的 `vendor_boot` 分区专门用来存储启动阶段所需的专有组件;同时保留原有结构不变的部分则继续沿用传统命名方式如 `boot`, `recovery` 等。 ```bash # 示例命令展示如何挂载 vendor_boot 分区 mount /dev/block/bootdevice/by-name/vendor_boot /mnt/vendor_boot/ ls -lR /mnt/vendor_boot/ ``` --- #### 技术挑战与发展前景 尽管 GKI 已经取得了很大进步,但在实际部署过程中仍然面临一些难题: - 不同品牌间存在较大差异性的硬件组合可能导致个别情况下的性能下降或者资源浪费现象; - 完全依赖预构建好的二进制文件可能会限制开发人员探索创新解决方案的空间。 未来随着社区共同努力解决这些问题,预计将会看到更加成熟完善的 Android GKI 生态体系形成。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式_笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值