华为「鸿蒙」出世:全球首个微内核全场景分布式OS,可取代安卓,发布即开源

简介: 华为自研的鸿蒙系统究竟有多强大?刚刚,余承东在 HDC 2019 上为我们揭开了它的面纱——鸿蒙 OS,是一个划时代的全新操作系统。

这是华为历史上规模最大的一次开发者大会,除了万众瞩目的鸿蒙系统之外,华为 EMUI10 系统、搭载海思鸿鹄 818 智能芯片的「荣耀智慧屏」也会在大会上陆续亮相。


「未来 5 到 10 年华为的消费者战略是:全场景智慧生活。我们要提供全场景、全连接的智慧生活体验,而 AI 将是其核心驱动力。」华为消费者业务 CEO 余承东表示。


作为华为研发七年之久、作为杀手锏存在的「鸿蒙」系统,旨在替代并革新被广泛采用的安卓,实现更佳性能及安全性。


以鸿蒙为景柱:面向所有智能设备


余承东首先表示,鸿蒙是全球第一个微内核、面向 AI 全场景的分布式 OS。


操作系统是软件架构的核心。在计算机上,微软一家独大,而在移动设备上,安卓和苹果占据了手机操作系统市场,形成了双头垄断的格局。华为的鸿蒙系统,则面向物联网和 5G 时代。余承东表示,为了研发鸿蒙系统,华为投入了约 4000 人的开发力量。微信图片_20211201201114.jpg


鸿蒙 OS 打通了手机、电脑、平板、电视、汽车、智能穿戴,在所有设备上使用统一的操作系统,与此同时,新系统还兼容全部安卓应用和所有 Web 应用。微信图片_20211201200433.jpg


「为了打造属于未来的全场景互联时代,我们要有全新的操作系统。过去的 Linux、Windows、Mac 等是为 PC 时代准备的,手机时代安卓和 IOS 逐渐流行。而在未来,万物互联的形式对于应用的开发压力很大,而生态的协同工作也将变得非常困难。」余承东表示。


华为将鸿蒙系统的英文名字定为 Harmony,希望能够为这个世界带来更多的和谐。


更安全、可扩展的微内核


微信图片_20211201201447.jpg


目前,安卓等操作系统采用的都是宏内核,所有系统服务都被集中在内核里,包括文件系统、设备驱动、虚拟内存管理、网络协议栈等。由于代码量庞大,这种形式面临着安全漏洞多、可扩展性差等问题。


据余承东介绍,安卓操作系统的代码超过 1 亿行,光内核这一项超过了 2000 万行,但用户真正调用到的代码只有其中的 8%。如此庞大冗余的设计需要非常高的硬件消耗,这不符合 IoT 设备的要求。


今天的操作系统中,软件生态和硬件绑定,每个软件的开发需要和相应的硬件平台绑定,这样不利于开发者开发统一功能的应用,也降低了用户在不同平台上获得统一的使用体验。


而在物联网时代,多种终端的出现也提高了硬件的要求。多种多样的终端设备中,每一种设备对系统、内存、能耗等的需求都不同,缺乏一种统一的内核架构统一所有的终端设备。此外,各种各样终端互联对设备提出了更高的安全要求。


以上问题说明,以微内核为核心的下一代操作系统的开发势在必行。因此,各大公司都希望通过使用微内核开发的操作系统,实现一套软件架构在多种硬件平台上进行运行。例如,今天以 Linux 为核心的宏内核系统,正逐渐转变为谷歌 Fuchsia 这样的微内核系统。


然而,即使 Fuchsia 也不是分布式的,在性能上仍不能达到最极致的高效。


余承东在大会上表示:「我们要提供全场景的未来 OS,我们希望系统和硬件解耦,能够弹性部署,我们希望应用能够一次开发多次部署。
微信图片_20211201201919.jpg


因此,采用微内核的鸿蒙 OS 横空出世。相比于宏内核,微内核只提供最基础的系统服务,而其他功能都在内核之外以用户态来实现。
微信图片_20211201201908.jpg


鸿蒙 OS 实现了软件系统和硬件平台的模块化解耦,可以应对不同的设备进行部署。


例如,个人电脑、手机、可穿戴设备、智能音箱、物联网传感器目前是无法使用同一个操作系统的,因为这些硬件平台的物理内存、依赖环境、基础服务等完全不同。


使用鸿蒙 OS,可以根据设备的内存和运行环境进行加载。
微信图片_20211201201853.jpg


不管是硬件能力强还是硬件能力弱的硬件平台,都可以在统一的系统上加载和部署。这种系统可以在数 Gb 内存的手机上部署,也可以在只有 Kb 内存上的传感器上部署。


使用微内核还可以提高系统的安全性,也降低了维护难度,提升了可扩展性。因为用户态服务模块是独立的,微内核系统天然支持分布式运算。
微信图片_20211201201835.jpg


华为鸿蒙 OS 是非常安全的系统,首次通过形式化方法显著提升了 TEE 的内核安全。「我们希望所有操作系统在未来都可以使用微内核,」余承东表示。「通过数学方法来验证可以保证绝对的安全。


形式化验证是是非常耗费算力的——一行程序代码需要约 100 行代码进行形式化验证。有了微内核的设计,形式验证变得更加可行。另外,微内核的外核服务相互隔离,无需 Root 权限,即使部分组件被破解也不会攻破整个系统。
微信图片_20211201201819.jpg


尽管现在的鸿蒙仍然保持了 Linux 内核,支持所有传统应用。但在未来,余承东表示,鸿蒙希望能够使用微内核代替所有内核,使用统一的框架在所有设备上运行同样的程序。


分布式架构操作系统


相比谷歌的 Fuchsia,鸿蒙是全球第一个基于微内核的全场景分布式 OS。这一系统有分布式的架构制程,能够带来内核级的天生流畅。


微信图片_20211201201758.jpg


鸿蒙 OS 是怎样实现分布式工作的?据介绍,鸿蒙 OS 可以借助「软总线」实现多终端硬件能力的跨设备调用。


硬件能力虚拟化为共享资源,分布式软总线可以连接不同终端。一个操作系统可以让同一用户账户实现硬件能力的跨设备之间的调度。「这是业界操作系统上从来没有的能力,」余承东表示。


「极简协议」是分布式软总线的核心技术。它将四层协议栈精简为一层,能够提升有效载荷。
微信图片_20211201200430.jpg


分布式软总线可以让时延小于 20ms,在丢包率 25% 的时候也能保证用户体验。这是如何做到的?余承东表示,鸿蒙能够实现实时的负载预测,确定时延引擎可以让速度快的进程和速度慢的进程互相不干扰,从而提高效率。

微信图片_20211201200428.jpg

同时在加载程序的过程中,使用确定时延引擎,根据不同应用的负载提供相应的计算资源进行工作,而非像安卓系统那样为所有应用提供一样的资源。

微信图片_20211201200425.jpg

华为还表示,鸿蒙 OS 的高性能 IPC 让进程间通信效率,相比 Fuchsia 速度可以提升 5 倍。


方舟编译器加持,比常规安卓快 60%


今年 4 月,华为在发布 P30 系列手机时推出了「方舟编译器」它随着 EMUI 9.1 一同放出,据称能够改善安卓应用编译效率,让 APP 从原先的边解释边执行转变为全程机器码高效运行程序。


如果程序本身对华为的 EMUI 和麒麟处理器进行了特别优化,显然可以获得更好性能。华为宣称,方舟编译器可让系统操作流畅度提升 24%,系统响应速度提升 44%,第三方应用重新编译后流畅度可提升 60%。余承东表示,这是安卓系统历史上重要的一步。

微信图片_20211201200422.jpg

另外,鸿蒙 OS 也支持一次开发,全场景部署。凭借多终端开发 IDE,多语言统一编译,分布式架构 Kit 提供屏幕布局控件以及交互的自动适配,支持控件拖拽,面向预览的可视化编程,从而使开发者可以基于同一工程高效构建多端自动运行 App,实现真正的一次开发,多端部署,在跨设备之间实现共享生态。


余承东表示,华为方舟编译器是首个取代 Android 虚拟机模式的静态编译器,可供开发者在开发环境中一次性将高级语言编译为机器码。此外,方舟编译器未来将支持多语言统一编译,可大幅提高开发效率。


今天所有的安卓应用都是 Java 的 DEX code 和 C/C++库的文件(APK),在运行时还需要手机再度编译为机器码再进行执行。而方舟编译器可以混编不同的语言,可以统一表示和优化 Java 和 C++,同时形成的可执行程序不需要手机再做编译。这种过程摈弃了安卓系统迄今已来的短板,极大提高了应用流畅度。


华为表示,方舟编译器的框架将在今年 9 月开源。而在 2020 年,华为将会开源方舟编译器的所有代码。
微信图片_20211201200419.jpg


华为试图以物联网作为突破口的方向或许是正确的:当前智能手机领域已经成熟,未来最大的机会在于物联网。根据软银总裁孙正义的预测,到 2035 年,预计每个人需要 100 个物联网设备,全球物联网设备数量将达到 1 万亿个。而物联网设备和手机有巨大的差异,需要新的操作系统的支撑。


华为一直在测试鸿蒙操作系统与安卓应用程序的兼容性。鸿蒙系统还具有加密功能,能够更好地保护个人数据以及防止用户隐私遭到侵犯。
微信图片_20211201201545.jpg


在大会上,华为还公布了鸿蒙内核及 OS 的演进路标。首先,华为将在今年首发的智慧屏产品中率先使用鸿蒙 OS 1.0。未来三年,除完善相关技术外,鸿蒙 OS 会逐步应用在可穿戴、智慧屏、车机等更多智能设备中。
微信图片_20211201200412.jpg


除了明天即将发布的「电视」荣耀智慧屏,鸿蒙什么时候能用在手机上?余承东表示:随时可用。


「我们优先使用谷歌生态,如果安卓操作系统无法使用了,我们就随时可用鸿蒙。我们的鸿蒙是面向未来的操作系统,具有速度更快、更安全、具有完善可扩展性等特性。


此前有消息人士表示:「华为推出的搭载鸿蒙系统的手机将于 2019 年第四季度上市,备货量将达到数百万部,并预计将与华为 Mate 30 系统同时在消费者面前亮相。


搭载鸿蒙系统的手机预计定价在 2000 元左右,主要面向中低端手机用户。这样一来,华为就可以更快更便捷地在手机市场铺展开这款手机,同时也不会为用户造成经济负担。


最后,为了让更多的开发者可以使用先进的下一代操作系统,余承东宣布鸿蒙系统开源:「我们相信鸿蒙 OS 的推出会极大地提升产业的活力和生态的丰富性,希望鸿蒙 OS 的推出能够为全场景时代带来更加丰富多彩的体验。我们欢迎全球开发者积极支持鸿蒙 OS 生态建设,共同为消费者打造全场景智慧化生活体验。

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
1月前
|
关系型数据库 分布式数据库 数据库
【PolarDB开源】PolarDB-X源码解读:分布式事务处理机制揭秘
【5月更文挑战第20天】PolarDB-X,PolarDB家族的一员,专注于大规模分布式事务处理,采用2PC协议保证ACID特性。源码解析揭示其通过预提交、一致性快照隔离和乐观锁优化事务性能,以及利用事务日志进行故障恢复。深入理解其事务处理机制对开发者掌握分布式数据库核心技术至关重要。随着开源社区的发展,更多优化方案将涌现,助力构建更强大的分布式数据库系统。
106 6
|
12天前
|
Java Android开发 iOS开发
深入探讨移动操作系统的性能优化:安卓与iOS的对比分析
在现代移动设备中,操作系统的性能优化至关重要。本文从系统架构、内存管理、电池续航和应用程序运行效率等多个维度,深入探讨了安卓(Android)和iOS两大主流移动操作系统的优化策略及其实际效果,旨在为开发者和用户提供更清晰的了解和选择依据。
22 0
|
13天前
|
搜索推荐 Android开发 iOS开发
深入解析安卓与iOS操作系统的异同
安卓和iOS是目前两大主流移动操作系统,它们分别代表了开放性和封闭性的设计理念。本文将从系统架构、用户界面、应用生态等方面深入探讨安卓和iOS之间的异同,帮助读者更好地理解这两个操作系统的特点和优势。
24 3
|
13天前
|
搜索推荐 物联网 Linux
鸿蒙OS Next与安卓系统的比较
【6月更文挑战第2天】鸿蒙OS Next与安卓系统的比较
34 2
|
3天前
|
传感器 监控 物联网
【HarmonyOS】鸿蒙操作系统架构——揭秘华为的最新科技壮举
【HarmonyOS】鸿蒙操作系统架构——揭秘华为的最新科技壮举
13 0
|
6天前
|
存储 NoSQL Java
HBase是一个开源的、分布式的、面向列的NoSQL数据库系统
HBase是一个开源的、分布式的、面向列的NoSQL数据库系统
23 0
|
10天前
|
存储 API 开发工具
kotlin安卓开发,如何获取设备的唯一id, 有哪些开源库
在Kotlin的Android开发中,获取设备唯一ID的方法包括不稳定的ANDROID_ID、需要权限的IMEI、使用UUID与SharedPreference结合,以及考虑隐私的Firebase Installations ID和Advertising ID。由于隐私问题和Google Play政策,IMEI和ANDROID_ID不推荐作为长期唯一标识。推荐使用UUID(首次安装时生成并存储),或在涉及广告时使用Advertising ID(需用户同意),而Firebase Installations ID则提供了一种合规的设备标识选项。在选择方法时,必须遵守隐私指南和政策。
|
1月前
|
关系型数据库 分布式数据库 PolarDB
【PolarDB开源】PolarDB开源之旅:从零开始搭建分布式数据库集群
【5月更文挑战第20天】PolarDB,阿里云自研的云原生分布式数据库,因其高性能、高可用和易用性备受瞩目。本文指导如何搭建PolarDB集群:准备硬件和软件环境,从GitHub克隆源码,构建Docker镜像,部署控制节点和计算节点,最后验证集群状态。通过开源,PolarDB旨在推动数据库技术进步,邀请用户一同探索其潜力,共创未来。
85 4
|
12天前
|
搜索推荐 安全 Android开发
安卓与iOS操作系统的对比分析
在移动设备市场上,安卓和iOS操作系统一直是主要竞争对手。本文将从用户界面、应用生态系统、定制化程度和安全性等方面对安卓和iOS进行对比分析,并探讨两者在不同场景下的适用性。
|
1月前
|
XML API Android开发
android S 上 安装apk出现android.os.FileUriExposedException
android S 上 安装apk出现android.os.FileUriExposedException
42 6