getfromcode移动开发

Android 10 根文件系统和编译系统 旗浩

《Android 10 根文件系统和编译系统 旗浩》069615418a4ed1dddb415001958e4517bc6470.webp (76.55 KB, 下载次数: 70) 下载附件   保存到相册 2023-12-7 02:02 上传【技能收获】学完可掌握:Java 后端开发、Vue / 前端工程化。课程以实战为导向,覆盖从基础概念到完整项目落地的关键步骤,配套章节笔记便于课后复盘与面试前快速回顾。【学习建议】建议按目录顺序学习,先打基础再进入综合实战章节;每完成 2~3 节可结合笔记整理一份学习小结,最终尝试独立复现一套完整 Demo 写入个人作品集。【就业发展】可面向岗

单课价¥29.90新品 上架
会员价 ¥0开通会员,全站课程无限下载套餐详情
1 人关注 更新于 2026-09-21 永久有效
发货

网盘链接 · 支付成功后自动发货

保障

永久有效 · 链接失效免费补发

客服

每日 9:00-21:00 在线客服 联系客服

支付成功后自动发货,可在「我的订单」查看网盘链接;链接失效可联系客服免费补链。

正版保障 极速发货 售后无忧

这门课到底在讲什么

Android 10 的启动链路里,根文件系统(ramdisk / rootfs)和编译系统(Soong、Kati、Ninja、Make 的混合体)是两块最容易被跳过、又最容易在真机和生产环境里翻车的内容。市面上大多数 Android 课程停在 App 层或 Framework 层,很少有人把「镜像怎么被拼出来」「init 为什么能找到那个 .rc」「Android.bp 是怎么一步步变成 ninja 文件的」讲透。这套资料的主题就落在这里:以 Android 10 源码树为基准,拆根文件系统的组织方式,拆编译系统的分层与产物生成过程。

它更适合已经能跑通一次 AOSP 编译、但说不清中间发生了什么的人。如果你的日常是改 App、写业务,或者只关心 Framework API 调用,这份资料的直接收益有限;但如果你在做 ROM、系统裁剪、驱动适配、车机或定制设备,它对应的正是那些「编译过了但不知道为什么过、报错了也不知道从哪查」的场景。

技术栈与依赖环境

内容围绕 Android 10(API 29)这一代源码展开,这一代正是编译系统从纯 Make 向 Soong 迁移基本完成、同时 Kati 仍在转换 Android.mk 的过渡期,代表性很强。涉及的工具链和概念大致包括:

  • Soong / Blueprint:Android.bp 的语法、模块类型、属性继承与条件分支;
  • Kati:把 Android.mk 转成 ninja 的中间层,以及它与 Soong 产物的合流方式;
  • Ninja:最终执行构建的引擎,理解 build.ninja 的生成逻辑比读它本身更重要;
  • 根文件系统侧:init、init.rc 解析、fstab、属性系统(property)、SELinux 策略文件在 rootfs 中的落点;
  • 镜像与分区:ramdisk、system、vendor、product 等分区的组装与挂载关系。

环境上通常是 Linux + 足够大的磁盘 + 能拉全量 AOSP 的网络条件。这类内容脱离源码树基本没法验证,所以资料的价值在于「对着源码读」,而不是当文档背。

结构和可复用的部分

从组织方式看,它走的是「先讲编译系统怎么把一堆模块变成镜像,再讲 rootfs 里到底放了什么、init 怎么把它串起来」的顺序。前半段解决的是构建流程的黑盒问题:一个 Android.bp 模块经过 Blueprint 解析、Soong 生成、Kati 转换、Ninja 调度,最终产出什么;后半段解决的是运行时初始化问题:内核挂载 rootfs 之后,init 按什么顺序读 .rc、属性怎么被设置、服务怎么被拉起。

真正能拿来复用的,是几类具体的工程能力:给一个已有模块加 Android.bp 并正确声明依赖;往 rootfs 里增加自定义 rc 和可执行文件并保证权限、SELinux 上下文正确;定位「编译通过但开机服务没起来」这类问题时的排查路径。这些不是抽象方法论,而是能在自己的设备树上直接对照改的东西。笔记部分适合在改完一处后回头核对,而不是一次性读完。

怎么用它自学

建议的节奏是边看边在本地源码树里动手,而不是先看完再实践。具体做法:先在 Soong 相关章节里挑一个自己熟悉的模块,看它的 Android.bp 如何被解析成 ninja,再回到自己项目里给一个自研模块补上 bp 文件并跑通;进入 rootfs 和 init 部分后,尝试往 ramdisk 加一个开机自启的小服务,观察属性、权限和 SELinux 三处是否都配对。每一步都回到真实编译产物去验证,比记结论有效得多。

如果目的是准备系统方向的面试或转岗,重点放在能讲清「从源码到可启动镜像」这条链路上每个环节的输入输出,而不是记具体路径。这套资料适合当源码的对照索引来用:遇到构建或启动问题时回来查对应的那一层,比从头到尾刷一遍更符合它的定位。


069615418a4ed1dddb415001958e4517bc6470.webp (76.55 KB, 下载次数: 70) 下载附件   保存到相册 2023-12-7 02:02 上传

课程推荐

《Android 10 根文件系统和编译系统 旗浩》069615418a4ed1dddb415001958e4517bc6470.webp (76.55 KB, 下载次数: 70) 下载附件   保存到相册 2023-12-7 02:02 上传【技能收获】学完可掌握:Java 后端开发、Vue / 前端工程化。课程以实战为导向,覆盖从基础概念到完整项目落地的关键步骤,配套章节笔记便于课后复盘与面试前快速回顾。【学习建议】建议按目录顺序学习,先打基础再进入综合实战章节;每完成 2~3 节可结合笔记整理一份学习小结,最终尝试独立复现一套完整 Demo 写入个人作品集。【就业发展】可面向岗位:Linux 运维工程师、SRE、云计算工程师、DevOps 工程师。云原生与自动化运维仍是企业 IT 刚需方向,认证 + 实战项目组合能显著提升面试通过率,适合向中高级运维或架构岗进阶。 若你已有一定编程或运维基础,本课程可帮助你在现有技能栈上快速叠加热门方向能力,提升求职时的项目说服力与薪资谈判空间。

视频目录(44 节)

*   1 Android 10.0 根文件系统目录结构.mp4

*   2 Android 根文件系统的来源.mp4

*   3 Android 启动挂载根文件系统过程.mp4

*   4 Android 根文件系统子目录介绍.mp4

*   5 Android系统AB设备-super动态分区概念.mp4

*   6 boot分区 dtbo vbmeta镜像概念讲解.mp4

*   7 Android ramdisk镜像拆包方法.mp4

*   8 boot.img和dtbo.img镜像拆包实战.mp4

*   9 Android系统system镜像的拆包.mp4

*   10 sparse稀疏格式的system和super镜像.mp4

*   11 Android常见编译命令之mmm模块编译.mp4

*   12 Android常见编译命令之clean操作.mp4

*   13 Android 10源码顶层目录与安卓框架对应关系.mp4

*   14 Android 10源码顶层目录详解.mp4

*   15 Android源码之out目录结构详解.mp4

*   16 system源码子目录详解.mp4

*   17 framework目录之base子目录详解.mp4

*   18 Android源码输出到根文件系统的关系.mp4

*   19 Android adb工作原理.mp4

*   20 Android adb实战基本命令.mp4

*   21 Android adb实战文件传输和apk安装.mp4

*   22 Android 旧log系统和内核日志系统介绍.mp4

*   23 Android新的log系统架构介绍.mp4

*   24 Android logcat命令详解.mp4

*   25 events缓冲区日志和logwrapper命令.mp4

*   26 Android.mk介绍和组织.mp4

*   27 Android.mk编译可执行程序.mp4

*   28 Android.mk编译动态库.mp4

*   29 Android.mk 接动态和各种变量使用.mp4

*   30 32和64位程序编译.mp4

*   31 Android.mk编译vendor分区目标.mp4

*   32 Android.mk编译静态库和工程管理.mp4

*   33 Android.mk java动态库编译.mp4

*   34 Android.mk编译Android studio工程.mp4

*   35 Android.mk预编译介绍和busybox预编译.mp4

*   36 Android.mk预编译动态库和配置文件.mp4

*   37 Androidmk预编译system和vendor多模块.mp4

*   38 PRODUCT_COPY_FILE和PRODUCT讲解.mp4

*   39 Android.bp简介.mp4

*   40 Android.bp语法讲解.mp4

*   41 Android.bp实操之编译可执行程序.mp4

*   42 Android.bp实操之源码编译动态库.mp4

*   43 Android.bp实操之编译jar和apk.mp4

*   44 Android.bp实操之预编译etc 可执行程序 动态库.mp4

配套笔记(1 份 PDF)

*   Android10根文件系统和编译系统.pdf