摘要:
旧版 HAL 目录 HAL 模块 HAL 设备 编译 HAL 模块 HAL 可定义一个标准接口以供硬件供应商实现,这可让 Android 忽略较低级别的驱动程序实现。借助 HAL,您可以顺利实现相关功能,而不会影响或更改更高级别的系统。本页面介绍了自 Android 8.0 开始已不再支持的旧版架构 阅读全文
摘要:
相机 目录 架构 实现 HAL 旧版 HAL 组件 架构(旧版) 实现 HAL(旧版) 配置共享库 架构(旧版) 实现 HAL(旧版) 配置共享库 Android 的相机硬件抽象层 (HAL) 可将 Camera 2 中较高级别的相机框架 API 连接到底层的相机驱动程序和硬件。相机子系统包括相机管 阅读全文
摘要:
引导加载程序 引导加载程序是供应商专有的映像,负责在设备上启动内核。它会监护设备状态,负责初始化可信执行环境 (TEE)以及绑定其信任根。 引导加载程序由许多部分组成,包括启动画面。要开始启动,引导加载程序可能会直接将一个新映像刷写到相应的分区中,也可能会使用 recovery 开始重新刷写过程,该 阅读全文
摘要:
供应商原生开发套件 (VNDK) 目录 为何要使用 VNDK? VNDK 资源 VNDK 概念 适用于供应商的框架共享库 适用于供应商的框架共享库 供应商原生开发套件 (VNDK) 是专门用来让供应商实现其 HAL 的一组库。VNDK 包含在 system.img 中,并在运行时与供应商代码动态关联 阅读全文
摘要:
HIDL C++ 目录 客户端和服务器实现 创建 HAL 客户端 创建 HAL 服务器 Android O 对 Android 操作系统的架构重新进行了设计,以在独立于设备的 Android 平台与特定于设备和供应商的代码之间定义清晰的接口。Android 已经以 HAL 接口的形式(在 hardw 阅读全文
摘要:
HIDL 目录 HIDL 设计 使用直通模式 直通式标头文件 Binder 化直通式 HAL HIDL 语法 术语 直通式标头文件 Binder 化直通式 HAL HAL 接口定义语言(简称 HIDL,发音为“hide-l”)是用于指定 HAL 和其用户之间的接口的一种接口描述语言 (IDL)。HI 阅读全文
摘要:
使用 eBPF 扩展内核 目录 关于 eBPF Android BPF 加载程序 Android eBPF C 程序的格式 Android.bp 文件的格式 Android eBPF C 程序的格式 Android.bp 文件的格式 Android 包含一个 eBPF 加载程序和库,它会在 Andr 阅读全文
摘要:
接口要求 目录 系统调用 prctl 文件系统 procfs prctl procfs 本页介绍了 Android 正常运行所需的一系列 Linux 内核接口。供应商测试套件 (VTS) 会测试这些接口是否存在并正确无误。这些接口的数量将与日俱增,包含越来越多的 Android 内核接口。 系统调用 阅读全文
摘要:
Linux 内核是几乎所有的 Android 设备上极其重要的软件组成部分。本部分介绍了 Linux 内核开发和版本模型(如下)、稳定的长期支持 (LTS) 内核(包括所有 Android 设备都应使用稳定版本而非择优挑选补丁程序的原因)、内核配置和加固、接口和模块化内核要求(在 Android O 阅读全文
摘要:
Android 9 支持在不使用或不需要 Android 硬件子系统时动态关停这些子系统。例如,如果用户未使用 WLAN,WLAN 子系统就不应占用内存、耗用电量或使用其他系统资源。早期版本的 Android 中,在 Android 手机启动的整个期间,Android 设备上的 HAL/驱动程序都会 阅读全文
摘要:
HIDL HAL 可保证 Android 核心系统(也称为 system.img 或框架)向后兼容。虽然供应商测试套件 (VTS) 测试可确保 HAL 按预期运行(例如,针对所有 1.2 实现运行 1.1 HAL 测试),但仍需要进行框架测试,以确保提供受支持的 HAL(1.0、1.1 或 1.2) 阅读全文
摘要:
在 Android 8.0 及更高版本中,较低级别的层已重新编写以采用更加模块化的新架构。运行 Android 8.0 或更高版本的设备必须支持使用 HIDL 语言编写的 HAL,下面列出了一些例外情况。这些 HAL 可以是绑定式 HAL 也可以是直通式 HAL: 绑定式 HAL。 以 HAL 接口 阅读全文
摘要:
在 Android 8.0 及更高版本中,较低级别的层已重新编写以采用更加模块化的新架构。运行 Android 8.0 或更高版本的设备必须支持使用 HIDL 语言编写的 HAL,下面列出了一些例外情况。这些 HAL 可以是绑定式 HAL 也可以是直通式 HAL: 绑定式 HAL。 以 HAL 接口 阅读全文
摘要:
HAL 可定义一个标准接口以供硬件供应商实现,这可让 Android 忽略较低级别的驱动程序实现。借助 HAL,您可以顺利实现相关功能,而不会影响或更改更高级别的系统。本页面介绍了自 Android 8.0 开始已不再支持的旧版架构。对于 Android 8.0 及更高版本,请参阅 HAL 类型。 阅读全文
摘要:
模块化系统组件 目录 关于模块化系统组件 架构 可用模块 Android 10 对某些 Android 系统组件进行了模块化处理,使其能够在正常的 Android 发布周期之外进行更新。最终用户设备可以从 Google Play 商店基础架构或通过合作伙伴提供的无线下载 (OTA) 机制接收这些模块 阅读全文
摘要:
Android 架构 Android 系统架构包含以下组件: 图 1. Android 系统架构 应用框架。应用框架最常被应用开发者使用。作为硬件开发者,您应该非常了解开发者 API,因为很多此类 API 都可以直接映射到底层 HAL 接口,并可提供与实现驱动程序相关的实用信息。 Binder IP 阅读全文