Android14内核调试 - boot & vendor_boot

boot.img 和 vendor_boot.img 均为 Android 系统重要的启动镜像文件,其主要差异如下:

  • 出现时间不同
    • boot.img:是 Android 系统一直以来存在的核心启动镜像,自早期版本便用于设备的启动流程。
    • vendor_boot.img:其是 Android 9.0(Pie)及更高版本引入的新镜像文件,主要为适配新架构及功能需求而生。
  • 承担的功能不同
    • boot.img:负责 Android 系统基础启动工作,为系统启动及运行供应基础环境。其包含 Linux 内核,掌控设备硬件操作、内存管理及进程调度等;还常带有 ramdisk(内存磁盘),作为临时文件系统存储启动必需的文件、脚本,并辅助完成早期初始化;同时也会包含传递给内核的命令行参数等其他元数据。
    • vendor_boot.img:主要加载供应商提供的驱动程序、固件等,以确保设备硬件可正常运转。它能让供应商灵活管理与硬件强相关的启动逻辑,避免干扰 boot.img 中的通用启动流程。
  • 更新方式不同
    • boot.img:其更新常涉及系统核心功能调整或内核升级等,与 system 分区等存在紧密关联,更新时需严格校验兼容性,是系统更新的关键部分,常需和其他镜像配合更新以防启动问题。
    • vendor_boot.img:其可支持供应商独立更新硬件相关启动组件。特别在 A/B 更新架构及动态分区环境里,供应商能在不改动 boot.img 的前提下更新自有组件,加快迭代速度,简化维护流程,降低因更新硬件启动组件致使系统启动故障的风险。

另外,vendor_boot.img 的结构与 boot.img 类似,通常包含 vendor boot header、vendor ramdisk、vendor 相关的 DTB(设备树二进制文件)及可选的二级加载器等组件。

相关推荐
AI职业加油站5 分钟前
数据要素时代:大数据治理工程师证书深度解码
大数据·开发语言·人工智能·python·数据分析
CoderCodingNo5 分钟前
【GESP】C++八级考试大纲知识点梳理 (8) 算法优化技巧
开发语言·c++
We་ct24 分钟前
LeetCode 295. 数据流的中位数:双堆解法实战解析
开发语言·前端·数据结构·算法·leetcode·typescript·数据流
迷藏49428 分钟前
**雾计算中的边缘智能:基于Python的轻量级任务调度系统设计与实现**在物联网(IoT)飞速发展的今天,传统云
java·开发语言·python·物联网
LSL666_29 分钟前
云服务上安装nginx
java·运维·nginx
biubiubiu070633 分钟前
从 Python 和 Node.js 的流行看 Java 的真实位置
java·python·node.js
大鹏说大话37 分钟前
MySQL与PostgreSQL:底层架构差异与项目选型指南
开发语言
我是大猴子37 分钟前
队列的一些场景题以及处理方式
java
ictI CABL1 小时前
MySQL数据库的数据文件保存在哪?MySQL数据存在哪里
java
鱼鳞_1 小时前
Java学习笔记_Day20(二叉树)
java·笔记·学习