探讨操作系统时,我们应关注哪些要点?

发表时间: 2024-01-19 18:48

2024 年的第一个工作日,华为终端 CEO 余承东就在内部全员信中提到:

2024 年是原生鸿蒙的关键一年,我们要加快推进各类鸿蒙原生应用的开发,集中打赢技术底座和三方生态两大最艰巨的战斗。

半个月后,1 月 18 日,华为召开 2024 年的第一场发布会,主角便是鸿蒙星河版(HarmonyOS NEXT)——这个被戏称为「纯血鸿蒙」的系统,从 OS 内核到 AI 大模型都由华为自主研发,总共有超过 1.2 亿行代码,已经成为一个真正称得上成型的成熟系统。

如果说去年华为 Mate 60 系列的突然发布是一次闪击战,那么鸿蒙系统的构建就是一场长征。

2015 年,彼时华为手机销量刚刚突破 1 亿大关,市场份额一路高歌猛进,未来的「危机」还未到来,但鸿蒙系统的开发却已经被提上日程;四年后,我们在 2019 年的 HDC 上第一次瞥见鸿蒙系统的片鳞半爪,分布式微内核的设计深入人心;又过了四年,鸿蒙星河版终于对外展示了这套系统的全貌,也迎来了属于鸿蒙的关键战役。

居安思危,华为从来不打无准备之仗。

1 亿行代码,从替代到超越

自 2007 年 iPhone 发布以来,智能手机已经发展了十七年,而 iOS 和 Android 两大系统的内核则比手机发展史更早——Linux 内核诞生于 1991 年,XNU 内核则诞生于 1996 年,都是差不多三十年前 PC 时代发展的产物。

如果把操作系统比作飞机,内核就好比是发动机,是驱动硬件和应用交互的重要组件。同样用人类的飞行史做比喻,此刻的时间节点大概相当于 20 世纪三四十年代。

当时飞机已经发展了数十年,但动力来源始终离不开螺旋桨与往复式发动机两大核心,一切设计都是在此基础上「缝缝补补」的渐进式改进,一如 2024 年的 Android 和 iOS 仍建构于上世纪末的 Linux 和 XNU 内核之上。

▲最早的喷气式飞机 He 178

但时代发展总会驱使技术路线产生分岔。技术的发展并不完全遵循渐进式的发展历程,也更有可能出现爆发式的突破。到上世纪 30 年代,发明家汉斯·冯·奥海恩和弗兰克·惠特尔,分别想到了抛弃了螺旋桨和往复式发动机的新技术,从头设计出了喷气式发动机。

二战期间不太平的天空给了这些发动机技术路线正面竞争的机会,而性能更佳的喷气式发动机很快证明了自己,后来居上成为今日航天器的主流动力来源。

飞机发动机的演进,和操作系统的发展有相似之处。

三十年前,一个人每天面对和处理的信息量,较之三十年后的此刻,或许早已不可同日而语。虚拟世界的繁多信息已经从桌上流转到你生活中的各个角落——手机、手表、眼镜、耳机、PC、平板、电视、智能家居、智能汽车等等,而信息要适应不同形态、不同场景甚至不同人数的需求。

这些起源于数十年前个人计算机时代的程序,真的能够顺应当下智能设备发展的潮流吗?

这也是为什么鸿蒙星河版值得关注。

全新鸿蒙系统实现了全栈自研,总代码数达到了惊人的 1.2 亿行。

从 OS 内核、文件系统的「根」,到云端和 AI 模型的「枝叶」,每一项技术框架都是在空白画布上重新创作,独立于既存的所有其他项目,如此水平的系统重构整合,不亚于重新发明了飞机发动机。

重新构筑底层系统带来的最大好处,就是鸿蒙星河版在架构设计和技术细节上有了更多适应时代发展的新特性。

大破之后才有大立。与 Android 沿用的 Linux 内核相比,鸿蒙采用微内核架构,具备天生流畅、极致能效和纯净安全三大特征。

发布会上举了一个例子:如果说 Linux 内核的任务调度是让不同体量和速度的汽车放在同一条混合车道,那么鸿蒙内核就是根据用户场景与系统负载自动区分出快车道、慢车道和超车道,高效调度配合极简组件通信方式、轻量并发模型和全新内存机制,再新再多的设备,同样能实现天生高流畅与低能耗。

安全性同样是重中之重。Android 用户苦于 0day 漏洞与时常更新的内核安全补丁久矣,相应地,鸿蒙内核从一开始就选择了无 root 权限设计,内核服务相互隔离,安全验证模块也从数学角度得到了保障。

这让鸿蒙内核得以斩获了一系列行业最高等级安全认证,如 CC EAL6+、ASIL-D 和 IEC 61508。而此前,没有任何像系统内核这样的复杂架构能够通过 CC EAL6+ 的严苛考验。

说回发动机,技术路线转变的「突然」,其实是相对于整个历史而言的,对生活在当时的人来说,这一转变的过程其实相当漫长。

从惠特尼申请喷气式发动机专利到他亲手设计的飞机升空,中间隔了 11 年时间。华为鸿蒙从立项到系统底层完全重构的鸿蒙星河版,也花了近十年,而这十年沉淀,让华为鸿蒙生态更加夯实。

行稳才能致远。在这段时间里,鸿蒙稳扎稳打,几乎从零开始逐步攻克技术难点,并归纳成为海量开发文档和开发工具。直到这些「配套设施」全部开发到位,鸿蒙星河版才正式朝开发者亮相。

比如说,自研开发语言 ArkTS,本质上仍兼容于 TypeScript 语言,开发者无需重新学习就能投入到鸿蒙项目的开发中。但它又引入了众多新特性,能让开发者以更简单、自然的方式编程,平均提高了 30% 开发效率。而毕昇编译器的存在,使得一行代码不改,执行性能即可提高 10%。

有了这些趁手的工具,开发者才能积极拥抱新生态,如此鸿蒙方可宣称实现了「从替代到超越」。

为 8 亿设备打造,全球首个全场景系统

在发布会现场,爱范儿看到了第一批搭载了鸿蒙星河版的设备演示,其使用感可以归结为四个词:

灵巧、精致、安全和智能。

所谓「灵巧」,指的是原生鸿蒙实现了「组件解耦」,也就是将显示、声音和通信等模块分拆开来,开发者可以根据需求将这些模块如同活字印刷术中的字模一样组合起来,应用在不同的设备上。

开发者不再需要挖空心思让软件削足适履适应硬件,而是可以「场景先行」,先想好特定设备和场景需要什么功能,再毫无负担地引入相应的模块。

作为消费者的用户,更容易意识到的应当是视觉上的「精致」。

与现行的鸿蒙 4 相比,鸿蒙星河版在视觉语言上实现了底层重构。微软和 Google 曾分别尝试过推行 Mica 和 Material Design 设计语言,但由于设计规范停留在应用层,开发者未必愿意选择,最终的结果就像是光鲜亮丽的城市中夹杂着许多古老的「城中村」。

相反,鸿蒙星河版的视觉语言是原生的和全局性的。使用鸿蒙开发工具做出的应用天然地适用这一套设计语言,原生光效作为鸿蒙系统的设计 DNA 贯穿于每一个角落,赋予了系统一种日出海面般的呼吸感与生命力。

重视动画的厂商有很多,但将光效、光场提升到动效的核心位置,用光线明暗变化表达生机的仅此一家。

在消费者越来越重视的安全和隐私保护方面,鸿蒙也加入了许多巧思。

你可以将用户和应用之间的关系比喻成寄件人与快递员,当用户打算换头像时,就等于要把一张图片文件交托给「快递员」送出。

问题在于,过往的权限管理机制是相当粗放的。每到这种场合,「快递员」就会向用户索要整间屋子的钥匙(相机、图库、位置等访问权限),而用户只能选择同意或拒绝。一旦将钥匙交给对方,就无力阻止快递员进屋四处翻找不相关的数据。

鸿蒙则是从系统底层将隐私管理细化到每一个文件,相当于在家门口搭了一个「快递柜」,用户将准备用作头像的图片放进去,快递员再上门取件。整个过程里,对方都无法接触到允许范围之外的文件,从而更好地保护个人隐私安全。

鸿蒙还将 AI 智能能力放到了系统层,标准接口意味着鸿蒙原生应用的开发者能够轻松调用系统自带的 AI 能力。

假设爱范儿 app 开发了一个鸿蒙版,我们的技术同事就不需要花时间重复造轮子,加一行代码,就能调用系统控件实现文章 AI 朗读功能,把图文变成音频。更妙的是,鸿蒙系统的自然无感跨端交互意味着你可以在手机上听到一半,打开车门,坐进车里,车机系统自动接力继续播放,一个图文内容几乎零成本就变成了一档播客节目。

按照路线图,鸿蒙星河版要到今年第四季度才会推出面向全部消费者的商用版,但仅是当前开发者预览版所体现出的能力,就让年底的几个月尤其值得期待。

70 亿元开发者激励,但鸿蒙的机会还有更多

去年的华为开发者大会上,华为终端 BG 软件部总裁龚体曾说:

鸿蒙经过了四个大版本的迭代,已经构建了具有差异化特征的用户体验,接下来最重要的工作就是构建繁荣的鸿蒙应用生态。这是一项需要广大开发者一起参与的伟大事业。

星河欲转千帆舞,鸿蒙星河版能否跑起来,真正起决定性作用的其实是开发者与生态合作伙伴。

昔日 Bada 和 Tizen 等系统的命运揭示了,没有应用支持的操作系统就是无源之水无本之木。构建底座技术可以十年磨一剑,但构建生态必须一鼓作气拿下。

在这里,节奏是关键。应用之间存在网络外部性,用户人数越多,每个用户得到的收益就越高,只有短时间内有足够多、足够好的应用进驻,它们之间才能形成协同生态。节奏慢下来,厂商和开发者就会陷入观望,导致系统落入慢性死亡的轨道。于鸿蒙而言,这是最关键的战役。

幸运的是,华为的同道者众。

去年 8 月,鸿蒙生态设备方才突破 7 亿;短短 5 个月后,这一数字已刷新到了 8 亿。同样是在这 5 个月内,华为已经完成了鸿蒙原生生态的第一阶段工作,首批 200+ 鸿蒙原生应用开发达成意向,其中不乏新浪微博、小红书、哔哩哔哩等「国民应用」。

在开发者生态培育方面,目前已经有 300 多所高校培育鸿蒙生态建设人才,开展了 150 多个产学合作项目。华为还联合相关企业、高校、机构等,每月培养超过 10 万名鸿蒙开发者。或许这也是余承东在发布会上底气十足地喊出:有底座有生态才是真操作系统的原因。在不断成长的生态之下,是一个个鲜活的青年力量,作为华为的同行伙伴,一起向前。

当然,从绝对值上说,200 这个数字还是太小,原生应用生态还需要再添一把火。华为第二阶段的目标是,到今年年中覆盖 5000 个头部 app,再后面,是 50 万个,最终,是从中国走向全球。

目标任重而道远,要达成这一规划,少不了投入资源。

比如,对于首批适配鸿蒙的厂商,华为会提供技术支持和流量倾斜,包括渠道宣发和应用商店排名,等等。在鸿蒙星河版的应用商店里,还特地划出了「鸿蒙先锋」专区,为首批原生应用导流。

后来的开发者也有机会。

自 2017 年起开始的鸿蒙生态全球激励项目「耀星计划」本月迎来升级,华为投入 70 亿元资源鼓励鸿蒙原生应用、元服务、SDK 等领域创新,开发者官网还提供了上架分发、运营增长和商业变现方面的协助。

千帆俱举,万棹遄征。新航路的开辟总会吸引冒险者的加入,未来的鸿蒙亦然。更何况,这趟「冒险」的成本相当低——自研 SDK 令已有应用转移到鸿蒙原生生态的开发量大幅降低,以农行掌上银行为例,鸿蒙原生版整个代码量减少了 20%,有 95% 存量资产均可复用,只花了短短 26 天就完成开发并快速上线,同时基于鸿蒙内核底层的安全特性,网银的安全能力也得到了保障。

反过来说,对厂商和开发者而言,鸿蒙原生生态的特性也给予了他们一个重新审视应用形态的契机。新架构为应用提供了更广阔的想象空间。

比如小红书的鸿蒙原生版就支持多设备协同能力,不同尺寸屏幕可以适应不同排版样式的内容,还可以实现电脑端完成编辑,手机端马上就可以预览的操作,这在其他系统里是很难做到的。

时至 2024 年,在大家都觉得手机创新要走到尽头的时候,鸿蒙星河版却提供了更多的可能性,是难得可贵的机会,值得去开发挖掘。

从头开始构筑一套操作系统,是一件难而正确的事情,用「十年磨一剑」短短五个字来概括,显然有些单薄。不如看几组数据感知来得强烈:

  • 跨越 10 年,这个项目也才刚刚进入第二阶段;
  • 狂奔 1624 天,终于敲开了 200 多个应用的门;
  • 从 TOP 200 到 TOP 5000 再到 50 万个应用;
  • 从 1 亿设备到 8 亿设备再到数十亿设备;

中国企业从头开始构筑一套操作系统,是一件难而正确的事情;是一场只有华为一家企业不可能取得胜利的长征,而这也从来不只是华为一家企业的长征。

智能手机和移动互联网蓬勃发展十余年,在中国培养了超过 2000 万的开发者,却因为复杂的因缘际遇,至今没有一个由中国自主的软件生态。

时代的大潮滚滚而来,产业升级和技术革命的前夕,数千万中国开发者也有殷切的期待。华为鸿蒙是新时代的大江大海,这次由中国开发者们掌舵。

百舸争流,奋楫者先;千帆竞发,勇进者胜。

*本文由肖钦鹏、彭海星共同完成