安卓系统,如今正活跃在数十亿台设备之上,它虽是应用最广泛的移动操作系统,却也并非无可替代。在取代安卓的候选名单上,呼声最高的两个名字,一个是华为鸿蒙,另一个是谷歌 Fuchsia OS。
不过最近,谷歌 Fuchsia OS 遇到问题了。
9to5Google 最近报道称,Fuchsia OS 的工程总监 Chris McKillop 已于最近离职。他之于 Fuchsia OS 的核心地位是不言而喻的,他作为项目负责人,主导了 Fuchsia OS 的开发。而作为一名十年谷歌老兵,McKillop 还协助创建了 Flutter 项目团队,并短暂参与 Android TV 电视系统的研发。
McKillop 可以说是一位资历深厚的大神,在投身谷歌之前,他曾参与初代 iPhone OS(iOS 的前身,iOS 4 开始才改叫 iOS)、Palm webOS 的创建,还曾在 QNX Software Systems 担任软件工程师,后来 QNX 被黑莓所收购。
随着他的离去,Fuchsia OS 将走向何方,是否还在谷歌未来的计划中,都要打上个问号。
1.取代安卓?
谷歌开发的 Fuchsia OS,华为打造的鸿蒙系统,在进入大众视野之时,就背上了“取代安卓”的期望。
根据 Chris McKillop 的说法,谷歌最早在 2015 年就开始研发 Fuchsia OS。大约在 2016 年 8 月,外媒首次报道了 Fuchsia OS 这个新系统的存在。GitHub 上的代码表明, Fuchsia OS 可以跑在各种类型的设备上,包括智能手机、手表、车机、平板电脑和 PC,甚至是交通信号灯之类的嵌入式设备。
媒体在此后的跟进报道中做出猜测,做这个新系统难道是要取代安卓?毕竟,安卓系统除了数十亿台手机平板在用,在各大领域上也算是无处不在:电视有 Android TV、车机有 Android Auto、手表有 Android Wear(后改为 Wear OS by Google)、物联网设备有 Android Things(虽然从未启用)……
谷歌身为安卓掌门人,对于“Fuchsia OS 取代安卓”的说法从未表态。不过在 2019 年 1 月,曝光的代码显示, 谷歌将通过 Android Runtime 为 Fuchsia OS 提供安卓应用兼容,表明谷歌不会那么快抛弃安卓。
同样在这一年,媒体界传出了华为要用鸿蒙系统替代安卓的传闻,或许这刺激谷歌加快了 Fuchsia OS 项目步伐。在 Google I/O 2019 上,谷歌公开谈到了 Fuchsia OS,并于 7 月 1 日正式公布系统开源项目网站“fuchsia.dev”。
随后,华为高调宣布了鸿蒙系统,公布路线图和开源计划,招揽生态合作伙伴。谷歌则不一样,依然是低调地开展 Fuchsia OS 研发。直到 2021 年 5 月,鸿蒙正式登录手机的前夕,谷歌员工才证实,谷歌的 Home Hub 智能音箱已经通过升级用上了 Fuchsia OS。
2.Fuchsia OS 与鸿蒙有何异同?
在设计上,Fuchsia OS 与鸿蒙可谓是异曲同工,不仅仅因为“顶替安卓”的名号,还因为其微内核、分布式的特点。
安卓系统基于 Linux 内核,是一个宏内核(或者单体式内核)系统, 而 Fuchsia OS 基于自有 Zircon 内核、鸿蒙基于自有鸿蒙内核,是微内核系统。它们的最大好处是精简和安全。
如今的安卓系统已有超过 1 亿行代码,安卓采用的 Linux 内核,也有了 2780 万行代码(截至 2020 年 1 月)。微内核系统的规模要比这小得多,例如 QNX Neutrino RTOS 大约只有 10 万行代码,要比 Linux 小了 99% 以上。
微内核对比宏内核
因为 足够轻量化 ,Fuchsia 和鸿蒙系统,可以尽可能多地用在各种设备上,比如智能手表、智能路由器、嵌入式设备等,它们的硬件性能往往要比手机和电脑差很多。
微内核系统也更安全。首先它代码规模更小,潜在的漏洞更少。其次,它基于最小权限概念设计,只有内核拥有最高权限,像驱动程序、以及其他系统服务,跑在权限更低的用户空间上。这样的好处是,其中一项非底层模块崩溃、被攻击,也不会牵一发动全身,连累系统一同遭殃。
再说说分布式。微内核的设计特点,为 Fuchsia OS 和鸿蒙的分布式应用创造了条件,它们一个系统就运行在所有的设备上,从手机平板到音箱手表再到电视冰箱,从而实现万物互联。
这和传统智能家居一个设备、一个指令控制另一个设备的方式不同, 分布式部署可以通过软总线控制,带来沉浸式的全品类体验,需要用到什么就可以自动调用什么。
分布式设计的另一个好处是,软件只要开发一次,就可以在所有设备上同时运行。对于如今应用软件普遍上一个平台开发一套客户端的现状,分布式设计显然是面向未来的、更为理想的设计。
3.未来如何?
宏内核还是微内核,这曾是软件设计史上的一大争议点。上世纪 90 年代,“Linux 之父”Linus Torvalds、“Minix 之父” Andrew Tanenbaum 就展开了一场宏内核与微内核的论战,Linux 和 Minix,正是宏内核与微内核系统各自的代表。
而如今,大部分的通用操作系统都采用宏内核设计,比如 Linux,比如 Windows(介于两者之间,在实现上更接近于宏内核)。结果如何,想必已见分晓。
但是,微内核的分布式特点,让它更像是理想化的通用设计。只不过万事开头难,无论是谷歌 Fuchsia OS,还是华为鸿蒙,取代安卓之路还非常漫长。
谷歌这边,由于对安卓系统惯性过高,并行发展的 Fuchsia OS 一直进度缓慢,直到现在也只是推出到了谷歌的一些智能音箱上,而且几乎没为用户带来太多可感知的变化。
华为在这条道路上会更主动一些,由于受到制裁,华为不得已改变了安卓优先的策略,发力鸿蒙生态,从长远来看,这会不会是塞翁失马呢?