讲真!鸿蒙操作系统将开启万物智联新篇章
2019-08-15
近日,在华为开发者大会上,华为正式对外发布了鸿蒙操作系统(HarmonyOS)。这个此前被视为“备胎”的移动终端系统,终于走向前台。整个行业瞬间“沸腾”,中国第一次摘掉了没有自主操作系统的帽子。尽管现如今Android仍是全球最好的移动操作系统,但关于它的种种弊端已经显现,而鸿蒙操作系统正是带着利剑而来,面向下一个移动十年重新构建了一套全新的秩序。
在美国的各种高压封锁下,华为在2018年手机出货量仍高达2.06亿台,位列全球第三。余承东坦言,“如果没有美国的封锁,华为会成为全球第一,但今年恐怕是做不到了”。言外那份遗憾另人唏嘘。Android系统是美国谷歌公司的财产,在国家利益面前,它曾经选择断供华为。在这样的白色恐怖下,如果我们自己没有一个上的了台面的操作系统,那未来“卡脖子”的闹剧还将不断重演。而鸿蒙的推出,将解决全球移动终端对Android系统的绝对依赖,为人类世界创造更多价值。
为什么说鸿蒙OS是面向未来十年的操作系统呢?简单的来说,Android系统更新到现在,其思路依然是以手机端为核心,去控制其他设备达到万物互联的愿景。而鸿蒙OS的起点就是万物都可以是核心,通过分布式软总线来与万物智联。
华为最近一直在强调全场景智慧化体验,说白了就是要把华为定义的1+8+N的生态打通。这里的1是以手机为入口,8是以平板、PC、穿戴、HD、AI音箱、耳机、VR、车机为辅助入口,N则是泛IoT硬件,比如像照明、安防设备。这些设备在分布式软总线的定义下,硬件和系统解耦,像显示、摄像头、扬声器、麦克风、通信、传感器、计算都可以被视为一个个独立的模块,在模块池中任意设备之间均可以耦合关联。
在华为开发者大会上,华为演示了这种跨设备的互联,现场使用两台手机进行视频通话,开始都使用手机的前置摄像头。然后其中一台手机的摄像头选择模块池中的大疆无人机上的摄像头,此时另一台手机所显示的画面就由开发者大会现场,转而变成了几千公里外的实时画面。
简单的来说,鸿蒙OS就是要打破设备之间的壁垒,实现跨终端之间的智慧互联。
那么对于普通消费者来说,单看手机本身鸿蒙系统对比安卓有没有优势?软件能不能兼容?未来其他厂商能不能使用?接下来我们来深入浅出讨论一下。
一. 鸿蒙对比安卓有没有优势:那优势不知道高到哪里去了
安卓是一个成功的系统,在过去的十几年里,安卓系统覆盖了地球上至少4/3的智能移动终端。但是它的弊病早就已经显现,经过十几个版本的迭代,它不仅臃肿不堪,而且很多底层遗留的问题已经越来越明显。
首先,基于linux为底层的安卓系统,目前有4大生态。电脑用的Chrome OS、手机用的Android、手表用的Wear OS、物联网用的Android Things。这四个生态的软件彼此不兼容,也就是说如果想打通这四个平台的数据,就需要开发四套独立的软件。
暂且不说开发成本,仅版本迭代的维护成本就已经相当惊人了。而鸿蒙采用分布式系统的设计,上述的这四大平台采用一致的微内核,通过部署不同的驱动实现对不同设备的定义。搭配华为的统一框架开发工具,不同平台的适配只需要工作一次!
再者,基于Linux为底层的安卓系统最大的问题是代码臃肿,PC、服务器时代的模块被沿用至今。比如在华为EMUI9.1版本中使用的EROFS,就是取代了Ext4文件管理系统。因为Ext4是机械硬盘时代制定的标准,但在以闪存为介质的手机上,不论是读写机制还是文件回收机制都存在水土不服。华为用自研的EROFS替换掉Ext4后,也就奠定了华为手机“天生快一生快”的不卡顿卖点。
总的来说,鸿蒙相对于安卓,它们所处的时代不同,起点高度自然也就不同。毕竟安卓诞生的时代是PC浪潮汹涌,而鸿蒙出现则是在移动互联网、IoT万物互联阶段,由此设计的侧重点自然是面向下一个十年。(篇幅原因,鸿蒙系统下的微内核、时延引擎、IPC的优势下篇再聊)
二.软件能不能相互兼容:鸿蒙兼容安卓没问题
对于厂商和消费者而言,大家最关心的还是,鸿蒙操作系统是像苹果那样封闭起来单独搞生态,还是像安卓一样开放大家一起搞。这里首先要明确一点,鸿蒙操作系统可以通过技术手段向下兼容安卓系统上的应用APP。而且鸿蒙操作系统是完全开源的,开放性不用多说。
其实兼容安卓APP这个操作并不难,简单的来说所有软件在运行的时候,都是以机器语言——二进制码来执行的,不论PC还是手机都是如此,尽管效率很低,但因为处理器只能读懂这个语言,所以这几十年来大家都绕不过这个方式。为了解决效率问题,安卓曾经推出了ART、JIT、AOT、Dalvik等各种技术,就是为了加速代码到二进制码这一路径。但不论哪一种技术,都需要经过编译器或虚拟机来将软件输出为二进制码,技术之间的差别是有的在安装的时候就编译成二进制码,有的是在运行的时候翻译成二进制码。
此前华为发布了方舟编译器,其实就是为了兼容安卓生态开发。简单的来说,它支持C/C++、Java、JS、Kotlin等编程语言,比如过去我们用Java来编写安卓软件,现在依然可以,只是在上传到华为软件商店的时候,商店将会把安卓格式转换成方舟编译器格式,因为最终执行还是要还原到二进制码,所以从本质上来说鸿蒙只是将安卓的软件“翻译”成鸿蒙语言,然后经过效率更高的支持库,最终转换成二进制码。
相比之下,方舟编译器干掉了安卓上那个兼容不同编程语言的中间件JNI,也干掉了虚拟机GC内存回收带来的应用卡死。领先不止一点点!
简单一句话,兼容毫不费力!正如余承东所说的那样,“如果安卓不能用,可在一夜之间全部替换!”鸿蒙就是华为的底气。
三、未来其他厂商能不能用:开源!开源!开源!
首先,华为宣布鸿蒙是开源的系统,希望大家一起来构建一个更伟大的生态,而且按照华为被美国“卡脖子”的剧情发展,未来每一个领先的非美国公司都有可能被相同对待。为了避免这种情况,多数公司的选择只有两个,要么自己造一个备胎,要么和华为一起把鸿蒙做大,让安卓成为备胎。
前文提到鸿蒙操作系统是首款分布式的系统,它从规划初期就考虑到了跨平台使用场景。所以鸿蒙系统可以横跨手机、手表、手环、音箱、车机、IoT类等各种设备。目前主流的手机厂商具备一定二次开发安卓系统的能力,但对于中小型硬件公司来说,想真正从底层玩转安卓系统真的是太难了。索性直接从鸿蒙系统入手,一起构建鸿蒙生态是更好的选择。
对于更多的品牌来说,他们的隐虑在于鸿蒙是华为开发的,这就好比一个人既是运动员又是裁判员,最终的成绩都是自己说的算。对此,华为消费者业务云服务总裁张平安表示,公平性问题将由开源基金会和开源社区进行监督。他强调,华为既然选择了开源,就持续不断的为开源做贡献,未来还会向海外市场开源,甚至美国需要的话,也愿意开放。
鸿蒙操作系统的出现,终结了中国人没有自主操作系统的尴尬。尽管鸿蒙还没有那么快来到我们的身边,但笔者相信这条自主化的道路是不会轻易动摇的。就像人民锐评说的那样,鸿蒙一开天地宽,中华有为!