卢伟冰官宣小米澎湃 OS4,你对这款新系统有哪些期待?
我讲下澎湃 OS4的双框架部分吧。
大家知道,在纯血鸿蒙之前,华为的鸿蒙系统是双框架的。也就是说,Linux内核启动后,初始化子系统同时拉起了:
- 安卓的Zygote,然后fork各个安卓进程(服务或者应用),每个安卓进程会加载虚拟机(ART)、基础框架库(Framework)、垃圾回收机制(GC)等;
- 鸿蒙的appspawn,然后fork 每个鸿蒙进程,每个鸿蒙进程会加载虚拟机JS 运行环境,包括 JsEngine、NativeEngin、ArkJSRuntime、JSThread、EcmaVM 等重要组件。
鸿蒙双框架维持了很长时间,因为原本手机上的App都是遵循安卓的生态规范开发的,华为刚开始也只能掌控一方应用。后来大家看到了,随着国内很多常用app专门开发了鸿蒙版本——也就是支持这套arkts运行时,华为最后切换成了纯血鸿蒙。
回到小米澎湃OS4这边,技术博客是这么写的:

注意,双框架中,三方应用还是基于安卓栈,所以不涉及生态兼容问题;而对于一方应用,上图中示意了桌面、相册、天气三个应用,实际上目前也只有这三个应用重写了。
上图出现在技术博客中,但画的一点都不清楚。如果给技术人员看,看了个寂寞。我尝试翻译下:
- 下一代应用框架:Flutter UI 引擎 + Rust 业务逻辑框架 + 原生能力 API
- 原生代码运行环境:可被linux/vela系统fork/create/spawn的native的机器码(比如Linux上的ELF文件)
换言之,目前澎湃OS4上的三个一方应用(桌面、相册、天气)使用这套框架重写了一遍。之前它们是基于上图右侧的安卓栈开发和运行的。那现在的版本带来了什么优势?小米技术博客是这么写的:
为了保证生态兼容性,原生系统(OS3及之前,纯安卓栈)对所有应用进程采用统一的资源分配方式——无论是渲染完整界面,还是只在后台读一条消息,都要加载同一套完整的运行环境,独占10~20MB内存。单个进程看似开销不大,但一台手机开机后通常会运行超过100个应用进程,累积起来就是一笔不可忽视的资源浪费。
解释下,原生 Android为了保证庞大的第三方应用生态能够稳定运行,必须制定统一的API与运行规范:
- 统一资源分配:系统采用一视同仁的进程模型。不论应用是正在前台渲染复杂的 3D 界面,还是仅仅在后台等待接收一条推送消息,系统都会为其分配一个标准的完整进程;
- 10–20MB 的固定内存开销:应用进程通常通过 Zygote来fork,每个进程都要加载完整的虚拟机(ART)、基础框架库(Framework)、垃圾回收机制(GC)等。这 10–20MB 是进程启动时未执行任何业务逻辑前就已占用的固定内存(基线开销)。
技术博客说的100个应用累计起来,可不就有超额几百兆~上GB的内存开销?放到今天内存涨价的时代,这不就是每台机器一百的成本?
然后技术博客继续写到:
小米澎湃OS4已完成桌面、天气、相册三个应用的迁移。迁移的本质,是用更高效的编程语言对应用代码进行完全重写——这不仅意味着代码层面的工作量,还需要从零搭建架构设计、系统框架、开发工具、调试设施与自动化测试在内的一整套工程体系,并通过100%兼容性验证。最终成果不止于内存收益:新语言从根本上规避了原生垃圾回收机制带来的瞬时卡顿,让应用使用更流畅。
翻译下:
- 更高效的编程语言:rust;
- 工作量:代码层面 + 从零搭建架构设计、系统框架、开发工具、调试设施与自动化测试在内的一整套工程体系(毕竟脱离了安卓技术栈) + 100%兼容性验证;
- 从根本上规避了原生垃圾回收机制带来的瞬时卡顿:原来的Java/Kotlin 运行在 ART虚拟机上,存在垃圾回收(GC)机制。在桌面快速滑动、相册加载数万张缩略图等高强度场景下,GC 触发会导致微小的帧停顿(丢帧/微卡顿)。
但是,这个时候人们就会问了:but at what cost?
我觉得脱离了Zygote + art运行时后,会失去三个原来搭便车就会获得的好处:
- 1,失去了标准 Android SDK 的 API 库:要么自己重新写,要么桥接或者绕来绕去的去间接调用现成API;
- 2,失去了Java/Kotlin及各种开源库提供的便利性;
- 3,通信机制和生命周期管理(可能要自己写个微型调度器?)。
那么到目前为止,这套双框架和当初鸿蒙的双框架有什么本质区别?
可以直接看到的是,鸿蒙的双框架会提供一套和安卓类似的运行时机制:Zygote ➡️ appspawn、art运行时 ➡️ arkts运行时。而小米澎湃OS4的第二套框架则是基于Linux的rust + flutter开发。
前者,华为会创造独属鸿蒙的应用生态,滚雪球般,让三方来助力生态,生态又反哺三方,成为第二个安卓;后者,小米不会有这样的专属应用生态,why?很简单:没能力、没必要。
先说没能力,华为需要投入:
- 6年甚至更长的时间;
- 不计其数的资金;
- 行政力量的介入和支持;
- 规模庞大且高热忱度的客户(证据:5G时代搭载4G SoC卖5G价格的华为手机市占率可达10%;初代纯血鸿蒙应用非常残缺的情况下,市占率可超过10%。试问哪家可以做到?)。
方且做到今天鸿蒙生态的成熟度(国内达到80%的主流水平,国际市场还没怎么起色),你5个小米恐怕也没这个能力......
再说没必要。为什么呢?那个苹果开创的智能手机操作系统的时代已经逐渐在褪色了,未来是agent AI的时代!抓住这个时代的本质才是正解!小米若说有富裕资源,赶紧给我去搞:
- 端侧大模型;
- 可以运行端侧大模型的手机NPU;
- 支持端侧大模型的智能眼镜;
- 具身机器人;
- ......
当然,所幸上面也都在搞。