机器之心报道
机器之心编辑部
华为自研的鸿蒙系统究竟有多强大?刚刚,余承东在HDC上为我们揭开了它的面纱——鸿蒙OS,是一个划时代的全新操作系统。
这是华为历史上规模最大的一次开发者大会,除了万众瞩目的鸿蒙系统之外,华为EMUI10系统、搭载海思鸿鹄智能芯片的「荣耀智慧屏」也会在大会上陆续亮相。
「未来5到10年华为的消费者战略是:全场景智慧生活。我们要提供全场景、全连接的智慧生活体验,而AI将是其核心驱动力。」华为消费者业务CEO余承东表示。
作为华为研发七年之久、作为杀手锏存在的「鸿蒙」系统,旨在替代并革新被广泛采用的安卓,实现更佳性能及安全性。
以鸿蒙为景柱:面向所有智能设备
余承东首先表示,鸿蒙是全球第一个微内核、面向AI全场景的分布式OS。
操作系统是软件架构的核心。在计算机上,微软一家独大,而在移动设备上,安卓和苹果占据了手机操作系统市场,形成了双头垄断的格局。华为的鸿蒙系统,则面向物联网和5G时代。余承东表示,为了研发鸿蒙系统,华为投入了约人的开发力量。
鸿蒙OS打通了手机、电脑、平板、电视、汽车、智能穿戴,在所有设备上使用统一的操作系统,与此同时,新系统还兼容全部安卓应用和所有Web应用。
「为了打造属于未来的全场景互联时代,我们要有全新的操作系统。过去的Linux、Windows、Mac等是为PC时代准备的,手机时代安卓和IOS逐渐流行。而在未来,万物互联的形式对于应用的开发压力很大,而生态的协同工作也将变得非常困难。」余承东表示。
华为将鸿蒙系统的英文名字定为Harmony,希望能够为这个世界带来更多的和谐。
更安全、可扩展的微内核
目前,安卓等操作系统采用的都是宏内核,所有系统服务都被集中在内核里,包括文件系统、设备驱动、虚拟内存管理、网络协议栈等。由于代码量庞大,这种形式面临着安全漏洞多、可扩展性差等问题。
据余承东介绍,安卓操作系统的代码超过1亿行,光内核这一项超过了万行,但用户真正调用到的代码只有其中的8%。如此庞大冗余的设计需要非常高的硬件消耗,这不符合IoT设备的要求。
今天的操作系统中,软件生态和硬件绑定,每个软件的开发需要和相应的硬件平台绑定,这样不利于开发者开发统一功能的应用,也降低了用户在不同平台上获得统一的使用体验。
而在物联网时代,多种终端的出现也提高了硬件的要求。多种多样的终端设备中,每一种设备对系统、内存、能耗等的需求都不同,缺乏一种统一的内核架构统一所有的终端设备。此外,各种各样终端互联对设备提出了更高的安全要求。
以上问题说明,以微内核为核心的下一代操作系统的开发势在必行。因此,各大公司都希望通过使用微内核开发的操作系统,实现一套软件架构在多种硬件平台上进行运行。例如,今天以Linux为核心的宏内核系统,正逐渐转变为谷歌Fuchsia这样的微内核系统。
然而,即使Fuchsia也不是分布式的,在性能上仍不能达到最极致的高效。
余承东在大会上表示:「我们要提供全场景的未来OS,我们希望系统和硬件解耦,能够弹性部署,我们希望应用能够一次开发多次部署。」
因此,采用微内核的鸿蒙OS横空出世。相比于宏内核,微内核只提供最基础的系统服务,而其他功能都在内核之外以用户态来实现。
鸿蒙OS实现了软件系统和硬件平台的模块化解耦,可以应对不同的设备进行部署。
例如,个人电脑、手机、可穿戴设备、智能音箱、物联网传感器目前是无法使用同一个操作系统的,因为这些硬件平台的物理内存、依赖环境、基础服务等完全不同。
使用鸿蒙OS,可以根据设备的内存和运行环境进行加载。
不管是硬件能力强还是硬件能力弱的硬件平台,都可以在统一的系统上加载和部署。这种系统可以在数Gb内存的手机上部署,也可以在只有Kb内存上的传感器上部署。
使用微内核还可以提高系统的安全性,也降低了维护难度,提升了可扩展性。因为用户态服务模块是独立的,微内核系统天然支持分布式运算。
华为鸿蒙OS是非常安全的系统,首次通过形式化方法显著提升了TEE的内核安全。「我们希望所有操作系统在未来都可以使用微内核,」余承东表示。「通过数学方法来验证可以保证绝对的安全。」
形式化验证是是非常耗费算力的——一行程序代码需要约行代码进行形式化验证。有了微内核的设计,形式验证变得更加可行。另外,微内核的外核服务相互隔离,无需Root权限,即使部分组件被破解也不会攻破整个系统。
尽管现在的鸿蒙仍然保持了Linux内核,支持所有传统应用。但在未来,余承东表示,鸿蒙希望能够使用微内核代替所有内核,使用统一的框架在所有设备上运行同样的程序。
分布式架构操作系统
相比谷歌的Fuchsia,鸿蒙是全球第一个基于微内核的全场景分布式OS。这一系统有分布式的架构制程,能够带来内核级的天生流畅。
鸿蒙OS是怎样实现分布式工作的?据介绍,鸿蒙OS可以借助「软总线」实现多终端硬件能力的跨设备调用。
硬件能力虚拟化为共享资源,分布式软总线可以连接不同终端。一个操作系统可以让同一用户账户实现硬件能力的跨设备之间的调度。「这是业界操作系统上从来没有的能力,」余承东表示。
「极简协议」是分布式软总线的核心技术。它将四层协议栈精简为一层,能够提升有效载荷。
分布式软总线可以让时延小于20ms,在丢包率25%的时候也能保证用户体验。这是如何做到的?余承东表示,鸿蒙能够实现实时的负载预测,确定时延引擎可以让速度快的进程和速度慢的进程互相不干扰,从而提高效率。
同时在加载程序的过程中,使用确定时延引擎,根据不同应用的负载提供相应的计算资源进行工作,而非像安卓系统那样为所有应用提供一样的资源。
华为还表示,鸿蒙OS的高性能IPC让进程间通信效率,相比Fuchsia速度可以提升5倍。
方舟编译器加持,比常规安卓快60%
今年4月,华为在发布P30系列手机时推出了「方舟编译器」它随着EMUI9.1一同放出,据称能够改善安卓应用编译效率,让APP从原先的边解释边执行转变为全程机器码高效运行程序。
如果程序本身对华为的EMUI和麒麟处理器进行了特别优化,显然可以获得更好性能。华为宣称,方舟编译器可让系统操作流畅度提升24%,系统响应速度提升44%,第三方应用重新编译后流畅度可提升60%。余承东表示,这是安卓系统历史上重要的一步。
另外,鸿蒙OS也支持一次开发,全场景部署。凭借多终端开发IDE,多语言统一编译,分布式架构Kit提供屏幕布局控件以及交互的自动适配,支持控件拖拽,面向预览的可视化编程,从而使开发者可以基于同一工程高效构建多端自动运行App,实现真正的一次开发,多端部署,在跨设备之间实现共享生态。
余承东表示,华为方舟编译器是首个取代Android虚拟机模式的静态编译器,可供开发者在开发环境中一次性将高级语言编译为机器码。此外,方舟编译器未来将支持多语言统一编译,可大幅提高开发效率。
今天所有的安卓应用都是Java的DEXcode和C/C++库的文件(APK),在运行时还需要手机再度编译为机器码再进行执行。而方舟编译器可以混编不同的语言,可以统一表示和优化Java和C++,同时形成的可执行程序不需要手机再做编译。这种过程摈弃了安卓系统迄今已来的短板,极大提高了应用流畅度。
华为表示,方舟编译器的框架将在今年9月开源。而在年,华为将会开源方舟编译器的所有代码。
华为试图以物联网作为突破口的方向或许是正确的:当前智能手机领域已经成熟,未来最大的机会在于物联网。根据软银总裁孙正义的预测,到年,预计每个人需要个物联网设备,全球物联网设备数量将达到1万亿个。而物联网设备和手机有巨大的差异,需要新的操作系统的支撑。
华为一直在测试鸿蒙操作系统与安卓应用程序的兼容性。鸿蒙系统还具有加密功能,能够更好地保护个人数据以及防止用户隐私遭到侵犯。
在大会上,华为还公布了鸿蒙内核及OS的演进路标。首先,华为将在今年首发的智慧屏产品中率先使用鸿蒙OS1.0。未来三年,除完善相关技术外,鸿蒙OS会逐步应用在可穿戴、智慧屏、车机等更多智能设备中。
除了明天即将发布的「电视」荣耀智慧屏,鸿蒙什么时候能用在手机上?余承东表示:随时可用。
「我们优先使用谷歌生态,如果安卓操作系统无法使用了,我们就随时可用鸿蒙。我们的鸿蒙是面向未来的操作系统,具有速度更快、更安全、具有完善可扩展性等特性。」
此前有消息人士表示:「华为推出的搭载鸿蒙系统的手机将于年第四季度上市,备货量将达到数百万部,并预计将与华为Mate30系统同时在消费者面前亮相。」
搭载鸿蒙系统的手机预计定价在元左右,主要面向中低端手机用户。这样一来,华为就可以更快更便捷地在手机市场铺展开这款手机,同时也不会为用户造成经济负担。
最后,为了让更多的开发者可以使用先进的下一代操作系统,余承东宣布鸿蒙系统开源:「我们相信鸿蒙OS的推出会极大地提升产业的活力和生态的丰富性,希望鸿蒙OS的推出能够为全场景时代带来更加丰富多彩的体验。我们欢迎全球开发者积极支持鸿蒙OS生态建设,共同为消费者打造全场景智慧化生活体验。」