Kunyun 的技术笔记

车载显示系统 · 端侧 AI

主题路线

这里不讲”最新文章”,只讲该按什么顺序读。

每个主题给一条路径:从哪篇开始,读到哪算入门,再往下该补什么。文章列表是散的,路径是连的。


一、Android 显示系统

从应用绘制一帧,到这一帧真的出现在屏幕上。这条链路上有四层:应用、SurfaceFlinger、HWC、面板。绝大多数问题出在层的交界处。

推荐顺序

  1. 先建立地图 —— Android 显示系统学习路径
  2. 通读一遍合成主线 —— 从应用启动到帧合成的完整指南
  3. 进多窗口 —— HostLayer 统一合成与应用嵌入
  4. 想自己接管渲染 —— 自定义渲染引擎与集成

什么时候该跳过来:多窗口切换掉帧、应用嵌入显示错位、HWC 报合成失败、屏幕上出现一层不该有的黑块。

读完能做什么:拿到一个掉帧现象,能判断是应用画得慢、合成太多次、还是带宽不够。


二、车载 Android

车机和手机不一样的地方:屏幕多、分区多、对启动时间敏感、对稳定性要求极高。多窗口在这里不是可选项。

推荐顺序

  1. Android Automotive OS 中 TaskView 深度解析 —— 车机上把应用放进独立窗口
  2. dumpsys window 全解析 —— 出问题时先看这里
  3. SurfaceFlinger 集成与调试

什么时候该跳过来:仪表和中控要同时显示同一份数据、开机几十秒黑屏、HMI 在低端芯片上卡。


三、端侧 AI

在资源受限的设备上跑模型。核心矛盾永远是同一个:内存不够、带宽不够、功耗不够,三个里面通常只有一个能缓解。

这条线看什么:不要问”这个模型能不能跑”,要问”它让哪个任务超时、吃多少内存”。

相关文章:站内 端侧 AI 栏目 有完整路线。


四、AI 工具链

这个方向的更新速度远超任何技术栈,所以这里不追新品,只讲判断方法。

三条稳定的判断

  1. 省资源比加功能更容易活下来。 让成本下降的工具,ROI 能算清;让体验变好的工具,说服成本高。
  2. 绑上游订阅的工具,寿命取决于上游。 用别人的 key 省了钱,也把命交给了别人。
  3. 能本地跑的工具,在中文场景里更受欢迎。 不是因为技术好,是因为不用付费。

具体评测:GitHub 雷达


五、编译与构建

AOSP 编译的问题,八成是环境,两成是真 bug。而环境问题的报错往往长得像 bug。

最短路径:先确认 source build/envsetup.sh 和 lunch 组合对了,再看 ninja 报什么。链接阶段的”找不到定义”,先查 Android.bp 的 shared_libs,别急着怀疑源码。


关于这些路径

路径会随文章增加而调整。如果你发现某条路径断了(指向的文章不在了,或者顺序读下来接不上),告诉我,我改。


栏目汇总:显示系统 · 端侧 AI · GitHub 雷达