龙空技术网

一文看懂“华为鸿蒙之魔童降世”

晨报财经 10489

前言:

当前姐妹们对“java鸿鹄”可能比较关心,兄弟们都需要学习一些“java鸿鹄”的相关知识。那么小编也在网络上网罗了一些关于“java鸿鹄””的相关知识,希望你们能喜欢,看官们快快来学习一下吧!

本文来源:兴业计算机团队

写在前面的话

己亥之年,秋日伊始。今日,华为开发者大会将在松山湖溪流背坡村召开,鸿蒙OS成为大会焦点。从去年初以来,我们一直孜孜不倦的向市场推介安全创新,在这个过程中,时常会听到朋友们关于“非市场化孕育的创新走不长”的疑虑。直到鸿蒙的出现,才真正让大家看到目前中国的安全创新不仅有市场,而且有能力,虽然现在还只是破土而出的初始阶段,但假以时日有望成长为参天大树。怀着对鸿蒙的期冀之心,故而在会议之前有了这篇随笔。

1

从华为开发者盛会到鸿蒙的网络爆图

8月9日到11日,华为开发者大会将聚集5000名全球开发者,1500余名合作伙伴,带来200多个开放主题交流碰撞。本次大会主题在于华为生态链的构成与开放,大会日程分为主题演讲、技术论坛、松湖对话、Codelabs、Tech.Hour、互动体验六部分。华为消费者业务CEO余承东将就“全场景智慧化,迎接产业历史机遇”的主题发表演讲。除此外,华为消费者业务软件总裁王成录、华为消费者业务云服务总裁张平安、华为消费者业务首席战略官邵洋、华为Fellow艾伟也将出席大会。整体会议内容与流程均围绕着场景智慧化,万物互联为中心,开展代码讲解、技术应用、场景体验等实际应用活动。在华为场景智慧化方面,大会将开放体验智能穿戴设备、WalletKit、生活服务等一系列生态实景。其中有一项“黑科技”十足吊人胃口。

图1、华为前沿技术开放场景

资料来源:华为开发者大会官网,兴业证券经济与金融研究院整理

除了华为物联网的生态建设方面,华为为开发者提供的服务平台、解决方案也是大会的亮点之一。包括HiAI、ModelArts(面向AI开发者的一站式开发平台)、移动服务平台HMS、AR引擎、快服务智慧平台等产品服务的源代码讲解。

纵观2019年上半年,贸易战以来,华为生态布局慢慢浮出水面。此次开发者大会官方虽未公布操作系统相关信息,但市场纷纷预测,大会将Hongmeng OS(鸿蒙)的首秀。近日,有数码博主流出了一张疑似华为荣耀智慧屏UI界面,据推测该产品所搭载的很有可能就是鸿蒙OS。而据此前消息,荣耀智慧屏将搭载海思鸿鹄818智慧芯片和升降式AI摄像头两项锐科技,同时首发鸿蒙系统,可以推测,该图即是鸿蒙OS操作界面。使用体验上,一些爆料称“显示和外放都很赞,交互方式也很超前”。而TechWeb的爆料则是关于鸿蒙OS的系统设置界面,基本与安卓EMUI无二。应用“Weather”(天气)的APP信息里有“Android Green Alliance”的字眼,可以推断,鸿蒙OS符合余承东之前“完全兼容安卓应用”的描述。

图2、 (疑似)鸿蒙UI

资料来源:搜狐,兴业证券经济与金融研究院整理

图3、(疑似)鸿蒙系统设置界面

资料来源:TechWeb,兴业证券经济与金融研究院整理

2

操作系统的前世今生

兵马未动、粮草先行,鸿蒙初开,科创兴国!大会到来之前,请随笔者先一起回顾操作系统的发展史。

什么是操作系统?

操作系统(Operating System,OS),是配置在计算机硬件上的第一层软件,是对硬件系统的第一次扩充,占据整个计算机系统核心地位。根据应用场景不同,可将操作系统分为服务器端、个人桌面端和移动端三类,根据系统底层架构不同,又可将其分为Unix/OS X、Linux/Android、Windows,其中,OS X(Mac OS)为Unix衍生版本、Android则是基于Linux的一个发行版本。随着网络通信技术的不断进步,未来信息产业将朝着云计算与万物互联(IoT)发展,产能的爆发为终端不同应用场景带来更多需求。

图4、MS-DOS系统界面

资料来源:兴业证券经济与金融研究院整理

DOS/Windows OS

全球PC操作系统市场霸主Windows的先驱是DOS操作系统,由比尔盖茨于1980年以5万美元向蒂姆·帕特森购得,并改名为MS-DOS。前因是IBM向微软订购一款全新的操作系统以对抗苹果公司。当然,这个靠输入指令来运行程序的操作系统和Windows还是存在很大的区别——也就是鼠标的使用。

MS-DOS只能在同一时间处理一个程序,属于单用户单任务操作系统。而目前在32位微机上配置的操作系统基本上都是单用户多任务操作系统,Windows1.0发布于1985年,2.0发布于1987年,3.0发布于1990年。前两代系统由于和当时流行的16位微机不太适配,市场接受程度不高。直到Windows3.0,微软对人机交互界面、内存管理都进行了改进,从此Windows3.0为微软开疆扩土,在整个90年代,微软的成功都依靠着Windows3.0。至1993年,随着Intel 386、486将PC从16位时代领入32位时代,微软的Windows3.1也随之成为了PC的主流操作系统。

图5、Wintel体系

资料来源:兴业证券经济与金融研究院整理

1995年推出的Windows95,1998年推出的Windows98均采用了全32位技术,并兼容旧16位应用程序,系统还集成了Internet网络功能。Windows98将微软自己研发的IE(Internet Explorer)浏览器整合到了系统当中,且增加了多媒体支持。2001年推出的32位Windows XP是当时使用最为广泛的个人操作系统,且同时提供家用和工作站两个版本。之后的Windows vista、Windows 7、Windows 8直至现在的Windows 10大家就已经非常熟悉了,本文便不再阐述。

图6、Windows98用户界面

资料来源:兴业证券经济与金融研究院整理

Mac OS

谈到了Windows便不得不谈到苹果公司。DOS的诞生背景就是IBM为了对抗苹果的Apple II而找微软订购的一款产品。直至今天,Windows操作系统在我国市占率为81.83%,MacOS则占到了13.45%。Mac OS的Mac源于苹果的Macintosh(以下简称Mac)电脑系列的前三个字母,是基于Unix内核的图形化操作系统,也是首个在商用领域成功的图形用户界面操作系统(没错,比Windows要早)。当时的一段轶事说,乔布斯为了更快的获得Mac OS的第三方应用,找来了比尔·盖茨来作为Mac OS的首个第三方应用软件开发者,并要求在Mac首发的一年内不发行任何鼠标应用软件。当然后面的事大家也猜得到:1983年11月,Windows发布了,还顺带发布了Microsoft Word。更气的是,苹果仍然需要微软为其提供应用软件,无法将比尔·盖茨KO出局。

图7、Apple II PC

资料来源:兴业证券经济与金融研究院整理

不过时代发展到现在,Mac OS由于其独特的架构,可以说是个人电脑操作系统中最安全的一款。市面上大多数电脑病毒都是针对Windows操作系统,而鲜有针对Mac OS的攻击。苹果公司独特的生态圈——Mac、iPhone及其他苹果系列产品用户已经形成用户粘性,一步步蚕食着Windows的市场份额。只是两者都存在共同点:捆绑销售。提供操作系统,并捆绑销售应用软件。一方面提高营收,另一方面固定使用生态。

图8、2019年一季度我国PC操作系统市占率

资料来源:国家互联网应急中心,兴业证券经济与金融研究院整理

UNIX OS

以上谈到的PC操作系统都是闭源软件。而它们的启蒙始祖——Unix则是开源软件。1965年,隶属于AT&T的贝尔实验室的一名工程师肯·汤普森为了能在家玩自己写的小游戏——游戏只能在实验室自有的操作系统上运行——便自行开发了一套操作系统。但汤普森的同事嫌弃这个操作系统实在太差,只能两个人用,便给它起名为“Unics“,UNiplexed Information and Computing Service(另一说是单词“Eunuchs”的谐音),随后被改名为Unix。由于没被当回事,在大学、研究机构中Unix也被使用,贝尔实验室还为其提供源代码。之后AT&T采取了对外授权的形式,研究机构使用免费,企业使用付授权费。一方面,贝尔实验室失去了商业发展机遇,但另一方面,Unix得以在各研究机构中得到充分的使用和研究,其稳定性、安全性得到了较高提升。

Unix的两条主线,一个是AT&T的商业Unix版本,另一个则是Berkeley开发的半开源BSD(Berkeley Software Distribution) Unix。前者衍生出微软的Xenix、IBM的AIX、Sun的Solaris和惠普的HP-UX,后者则衍生出Sun OS、NexTSTEP等分支。

图9、Unix、类Unix操作系统简图

资料来源:兴业证券经济与金融研究院整理

但分支过多的缺点就是某一个系统上的应用软件常常需要修改才能应用到另一个系统上。所以,Unix系统主要被应用于服务器上,如IBM的AIX,惠普的HP-UX和SUN公司的Solaris系统,都是非常重要的服务器操作系统,其安全性、稳定性与可靠性,得到了市场的普遍认可,都是中高端服务器的主要参与者。

Linux OS

Linux是Unix的一个重要变种。1991年由芬兰大学生Linus Torvalds针对Intel 80386 开发而来。当时买不起Windows3.0的林纳斯索性自己写了一个操作系统。Linux完全免费、自由传播,设计基于POSIX和Unix的多用户、多任务、多线程和多处理器设计哲学,支持32位和64位硬件,同时还继承了Unix以网络为核心的设计思想。

开源不仅为林纳斯带来了极高的声誉,也在全世界的程序员的努力下保证了Linux系统的性能与稳定性,虽然发行版本众多,但所采用的内核仍是统一的。与此同时,开源软件开源的理念和自由主义精神也得到了广泛传播。

图10、Linux的Logo 企鹅Tux和开发者Linus

资料来源:兴业证券经济与金融研究院整理

不过,尽管Linux开源获得了巨大的成功,但由于没有成熟的商业管理进行运作,每个版本对其专业场景有着良好的适应性,却不存在一个统一的标准。同时也由于微软的围追堵截,Linux的市占率一直不高。目前,国产PC操作系统多数也是基于Linux进行的二次开发,目前市场比较流行的诸如Deepin、Ubuntu Kylin、NeoKylin,都是由Linux衍生而来。

移动端(手机、平板等)操作系统格局则不同于PC端,市场更加集中。PC操作系统霸主微软的Windows Phone已然折戟沉沙,市场被iOS、Android瓜分。据统计,iOS与Android系统的市占率分别达到23.65%与76.30%。由于iOS封闭的使用环境,大部分手机厂商都搭上了Android这趟顺风车。

图11、2019年一季度移动端操作系统市占率

资料来源:国家互联网应急中心,兴业证券经济与金融研究院整理

Android OS

Android是Google与2005年以5000万美金收购的。当苹果2007年推出了第一款iPhone后,Google意识到手机移动端市场的潜力与苹果的威胁,从而在大批项目中找到了Android。Android主要支持ARM架构的芯片,其上层使用Linux内核,以利用Linux的硬件支持。Android以Java虚拟机(JVM,Java Virtual Machine)为蓝本,通过解释器来将应用软件的APP“解释”成硬件听得懂的语言。

同时,由于目前使用最频繁的APP都是使用Java和C/C++的混编语言开发而成,为了不同的语言互通有无,Android需要JNI(Java Native Interface)作为接口。简单的说,手机硬件资源要分配一部分给JNI,各种语言的交互本身也是一种低效率的机制

为什么Android机APP打开的多了就会越用越“卡”?这就涉及到Android的内存回收机制。当手机内存资源不够用的时候,虚拟机就会召唤GC(Garbage Collection)封锁公路,停止所有的线程,以避免“交通流量超载”。由于涉及到回收内存空间,用户无法将此机制关闭,其整理内存的精确度也略显不足。

图12、Android架构

资料来源:Android Open Source Project,兴业证券经济与金融研究院整理

在相同的硬件条件下,Android难以达到iPhone的流畅度。所以使用Android的手机厂商通过提高硬件配置来提高手机流畅度,比较著名的是三星S系列,以及华为的高端手机系列等产品。一点有趣的彩蛋就是,Android的每一代版本名称都是甜品名。

图12、Android历代版本名与对应甜品

资料来源:知乎,兴业证券经济与金融研究院整理

3

鸿蒙方舟——乘风破浪会有时

2019年5月20日,在美国政府把华为列入“实体名单”后,谷歌已经暂停与华为公司的商业往来,此中包括除了公开资源外的硬件、软件转让与技术服务。

2019年5月24日,国家知识产权局商标局网站上显示,华为已经申请“华为鸿蒙”商标。据称,鸿蒙OS于2012年即规划开始研发。据《金融时报》对任正非的采访,鸿蒙系统本身目的在于物联网的应用,在自动驾驶、工业自动化等方面可以达到毫秒级到亚毫秒级。据此可以推断,鸿蒙也是基于Linux架构开发而出。

那么,鸿蒙OS相较于Android其优势在哪?

笔者认为此时就得提到华为另一项伟大的研发产品——方舟编译器。

上文提到,安卓对于APP的使用要通过其虚拟机中内置的编译器将其“翻译”成硬件可以理解的语言。编译器还是解释器都是在虚拟机上打补丁,既占用硬件资源,也最大发挥软件最优运行性能。一般手机厂商也就只能通过“堆”硬件的模式来提高手机性能。

而方舟编译器做到了什么呢?

厉害就在于,方舟编译器将Java的虚拟机扔掉,在软件史上首次将Java/C/C++等混合代码一次编译成机器码直接在手机上运行,彻底告别Java的JNI额外开销,也彻底告别了虚拟机GC内存回收带来的应用进程掉线。从Android的“翻译”进化到鸿蒙OS的“运行”。

图13、方舟编译器与Android对比

资料来源:开源中国,兴业证券经济与金融研究院整理

通过方舟编译器,Android的所有系统后台服务直接被全部替换。如果有P30系列的华为用户,那么恭喜,你们是第一批体验到这一改变的用户。对于开发者来说,方舟编译器可以让不同语言代码在开发者环境中被编译成同一套直接执行的机器码,代码优化环节可以上升到开发者环境中。

根据华为官方的测试结果,方舟编译器对手机系统操作流畅度的提升达24%,系统响应性能提升达44%。以新浪微博极速版为例,华为P30 Pro的操作流畅度较三星Galaxy S10+高出60%。考虑到鸿蒙搭载的是方舟编译器,可以说Android系统的几大缺点统统将在鸿蒙OS系统上被优化。可贵的是,华为并不仅限于“替代”Android,而是构建一整套华为生态圈。

根据此次华为开发者大会的介绍,与会的华为生态圈开发者超过5000名。正如其名“方舟”一样,方舟编译器也是承载着整个华为生态圈的一艘方舟。

图14、华为产品生态产业链(简介)

资料来源:兴业证券经济与金融研究院整理

可以看到,基于开源的整体理念下,整个生态包含了家居、健康穿戴、出行、文化、移动服务、支付、AR/VR等一系列应用场景。笔者猜测,上文提到的“黑科技”一项,是否就是华为荣耀智慧屏呢?

图15、华为开发者大会技术论坛议程

资料来源:华为开发者大会官网,兴业证券经济与金融研究院整理

如何看华为鸿蒙的未来?

有人会担心华为是否会走日本TRON系统的老路。笔者认为,当今的华为并不同于当年日本的富士通、三菱、日立,中国与美国当今的国际地位与体量也不同于当年的日本与美国、市场空间不甚相同,叠加5G带来的通信革命。无论如何,在时代浪潮之下,鸿蒙系统也许将像它的名字一样开创一片全新的生态系统。

只是罗马非一日建成,从头越,苍山如海,残阳如血。

标签: #java鸿鹄