189 8069 5689

鸿蒙架构开发设计,鸿蒙系统架构

鸿蒙2.0,有人骂有人爱,10年后我们再来看它多牛

【本文为自己视频的全文文字版本,针对亲爱的网友热点问题,在结尾处添加解答】

成都创新互联为客户提供专业的网站设计、网站制作、程序、域名、空间一条龙服务,提供基于WEB的系统开发. 服务项目涵盖了网页设计、网站程序开发、WEB系统开发、微信二次开发、成都手机网站制作等网站方面业务。

6月2日,鸿蒙系统2.0来了,我想用创世纪来形容这个系统的诞生,不吹不黑,这期我们以拥抱未来的视角来看下这个事件的影响,我打个赌,鸿蒙系统在10年之后会是世界上使用最多的系统,没有之一。

好了, 我们先看下这次鸿蒙2.0系统有什么亮眼的功能,我们知道,目前世界上使用最多的就是andriod系统,其次是苹果系统,还有一些根据安卓系统开发的定制系统,比如以前的华为、小米这些厂商的手机系统。鸿蒙系统和苹果系统一个开源,一个独家,没有可比性,不做探讨,那么鸿蒙系统和我们现在使用的安卓系统有什么区别?虽然两者都是基于linux操作系统开发的,但是核心不一样,安卓系统是宏内核,鸿蒙系统是微内核,宏内核的心脏里东西多,性能好,维修起来不方便,微内核的心脏里东西没几个,性能相对一般,但对我们来说绝对够用,方便维修,方便扩展。从底层逻辑讲这方面各有优劣,但鸿蒙系统的最大优势就是它设计之初就是针对万物互联这个场景的,起点就比安卓系统高了,一个系统就可以同时让智能手机、智能穿戴设备、电脑、智能家居、智能 汽车 等等使用,所以我才敢说它将是未来使用最多的系统,做个对比,小米MIUI系统也可以实现智能家居这些功能,未来它说不定也可以实现万物互联,但是它到底是基于美国的安卓系统,人家说不让你用了,你国外的手机市场就会瞬间崩盘,而鸿蒙系统是华为自己开发的,属于我们中国人的系统,换句话说,一家人再怎么打打闹闹,那是我们的家事,别人管不着,如果用安卓系统,动不动别人来指手画脚,还得看对方脸色,那得多憋屈?鸿蒙系统出现,迈开了国产手机系统的第一步,未来几年是关键点,会很难很难,难在人家都发展了几十年,而它还是个婴儿,少了七大姑八大姨的开发者长辈们,多给它送点衣服穿穿,别冻死了,作为老百姓,我们要对自己家的孩子多一些包容,这两天上手试了下,使用起来和安卓系统没太大区别,大家看个人想法想升级了可以升级下,支持一下,人多了好找BUG,那么华为公司即做系统,又卖手机,会不会造成手机行业的垄断?友商如何自处?

鸿蒙系统的出现,网上肯定会有各种各样的人发表自己的看法,可能是友商,可能是敌人,也可能是朋友,每个人所处的位置不同,想法不同,可以理解,尤其是对国内同样做手机的其他品牌,你这既当裁判员,又当踢球的,你让我们怎么活?要是我是商人,我也不愿意,想弄死它,但是人家华为倒好,直接把鸿蒙系统的底层核心架构,捐给了由工信部主管的开放原子开源基金会,这个可是国家的主管部门。由国家来当裁判员。意思就是说我把底层捐了,我现在自家华为手机用的系统,是在这个基础上定制优化的系统,其他的手机厂商,也可以在这个基础上开发属于自己的定制系统,这你没话说了吧,你可以做基于安卓系统的定制系统了,你如果愿意,当然也可以做基于鸿蒙底层架构的定制系统,而且这个鸿蒙系统有一个最大的优点,就是你开发一次,可以适配不同的设备,比如手机,比如手表,比如电视。不用你再需要专门针对这个产品再做一个系统,像堆积木一样,直接模块拿来就可以用。

所以我个人觉得没有必要再吵吵,华为敢做这个第一个吃螃蟹,挑战国外技术垄断的先头兵,我这个小人物也敢站出来说出自己的想法,我不想如果真有世界大战,我每天用的产品忽然黑屏了。

我前面还讲过博弈论里的囚徒困境,内卷的本质是,这次鸿蒙系统的出现,对手机产业来说,也是,相信,小米,VIVO这些厂商肯定也不爽美国谷歌公司久了,都想做出来一个自己的系统生态,挑战一下谷歌公司的领导地位,但是身上着火的人,肯定比即将着火的人先疼,华为公司被美国的制裁,从2018年就开始了,人家不想让华为发展起来,所以就想把第一名打疼,但是好在目前华为扛下来了,你不让我用GMS,我就造自己的HMS,芯片不让用,我只能默默积蓄力量,把荣耀业务卖了,以退为进,寻找其他的赢利点,我不知道华为还能坚持多久,能不能坚持的住,我也只能在这支持一下他们,也不知道有几个人看到。

严格来说,我不算华为的粉丝,我也用过苹果,小米,魅族,vivo等手机,各有各的好处,这次是华为开发出了属于中国人的鸿蒙系统,如果是其他中国的手机厂商开发了属于中国人的手机系统,我也一样支持。因为我坚信,人类 社会 在进步,更先进的新系统必定取代落后的旧系统!,最后借着鸿蒙系统,我们再来畅想下未来的万物互联。

鸿蒙2.0系统的发布,势必为未来的智能生活提供了一种保障,所有搭载了鸿蒙系统的设备都可以实现无线互联互通,不同设备之间的智能化、互联与协同都有了统一的机器语言。那么有人说了,现在这些都已经可以实现了,没错,是这样,举个例子你就清楚了,现在的鸿蒙系统所支持的产品设备,相当于是一群中国人在交流,而以前的互联互通,相当于中国人学了英语与外国人交流,哪个交流起来更方便,不用多说。

当然,说起万物互联,就离不开5G技术,要是没有这么快的网络去支持,万物互联也就实现不了,刚好,华为在5G技术领域的成绩全球也是数一数二,在应用场景里面与我们生活息息相关的,那就是智能家居,试想一下,屋子里所有的家庭设备,包括影音、空调、窗帘、照明、安防、甚至电饭煲等等你能想到的一切使用产品,都通过搭载鸿蒙系统,实现在一个终端远程操控。那你就可以真正“躺平”了,洗衣做饭都有机器人给你包圆了。据说比尔盖茨早在20年前就实现了这个智能家居的应用场景,不过因为投入巨大,一直没有普及,我们普通人也难以拥有,现在,这一切即将会为每个人都带来方便,而不是仅服务于大富翁们。

对于工厂来说,每一台设备都可以通过一样的系统实现连接,更加智能的同时,也会极大的提高 社会 生产效率,所有设备哪里出问题点哪里,一目了然。当然,这需要更多的开发者们加入进来,让更多产品能够加入鸿蒙系统的生态,量大才能出奇迹。任重而道远。

我们知道,区块链技术的一个最大优势就是不可篡改性,加上万物互联,

你以后吃的每一杯牛奶,都知道是哪头母牛产的,这个母牛是吃什么草长大的,这就是万物互联的意义,所有的产品都可以智能操控,追本溯源,并且紧密联系,产品如何更好玩,取决于你的想象力有多丰富。

未来已来,科幻电影里面出现的场景,都会在现实中一一实现, 科技 改变生活,这些在不久的将来肯定会逐步落地,为鸿蒙系统加油的同时。我们拭目以待。

问题1:鸿蒙2.0系统如何升级?

目前需要点击手机内【我的华为(或服务)】——首页就会看到HarmonyOS立即尝鲜,点击立即尝鲜,华为公司会推送系统升级包,在设置,手机更新里就可以看到,目前公测支持MateX2、Mate40系列、P40系列,Mate30系列,MatePad pro系列等等。

问题2:鸿蒙系统和安卓系统一样也是基于Linux开发的,Linux系统不会限制华为吗?

Linux系统是芬兰人名叫Linux人开发的一款开源系统,没有版权,是免费的,全世界都可以使用,而andriod系统虽然也是开源的,但是它的版权在美国谷歌公司手里,所以得授权使用。

问题3:鸿蒙系统底层架构捐给国家工信部的原子开源基金会,那么以后更新会不会更加不便利?

这里我再解释一下,我们现在用的小米、VIVO、OPPO,包括原来的华为手机,使用的系统都是基于andriod系统定制优化的属于各自手机厂商的系统,底层架构是美国谷歌公司的andriod系统,都不是原版的andriod系统,相当于装修了一下,地皮还是对方的。而华为把“地皮”捐给了国家,华为以后还会更新鸿蒙2.0,3.0,4.0等等,不影响,其他手机厂商有需要也可以基于这个鸿蒙基础架构,开发自己的定制系统。

再次感谢您们的支持。您们的支持,是我更新的动力。谢谢。

鸿蒙系统全面解析,诞生背景、技术细节生态圈一文看懂 | 智东西内参

华为6月2日正式发布的鸿蒙系统无疑占据了最近热点话题的C位,虽然不全是赞美的声音,但这种努力打破美国垄断,挑战谷歌、苹果在移动操作系统上垄断地位的尝试必将成为中国 科技 史上的里程碑事件。

本期的智能内参,我们推荐兴业证券的报告《华为鸿蒙深度研究》, 从鸿蒙系统的产生背景、开源技术细节和产业链生态圈全面解析鸿蒙系统。

原标题:

《华为鸿蒙深度研究》

作者: 未注明

鸿蒙产生的时代背景,总体来说有六个:

1、数字化的时代背景:数字化新时代的到来需要新的操作系统;

2、IoT 与 5G:5G物联网时代的到来对操作系统提出了新的要求;

3、中国面临“卡脖子”的挑战:独立自主的研发操作系统是迫切的需求;

4、人工智能的兴起:AIoT场景天然要求多设备智能协同,需要一个适用于各类型机器的操作系统;

5、大数据与云计算:TB、PB级的大数据需要一个能够提供多机互联的操作系统;

6、全球信息安全面临挑战:网络安全威胁呈现多元化、复杂化、频发高发趋势,需要一个足够安全的系统进行保障。

到鸿蒙的出现,操作系统已经经历了四代:分别是Unix、Windows/Mac/Linux、iOS/Android和鸿蒙/Fuchsia。

Fuchsia是由Google自主开发的基于Zircon微内核的开源系统,它可以运行在手机、电脑、智能家电等硬件产品上。

谷歌公司对Fuchsia的预期发展是让它取代Android和 Chrome OS ,统一两者成为一个操作系统。

和安卓相比,鸿蒙与安卓都是基于Linux开发,安卓是基于宏内核结构设计,而鸿蒙是基于微内核结构设计。鸿蒙系统使用C和C++编写,不需要虚拟机这一中间过程,因此运行效率更高。

和iOS相比,iOS和鸿蒙都是致力于万物互联的操作系统,iOS底层是基于Unix的,并且是闭源的,鸿蒙是基于Lmux的, 是开源的。

全球操作系统格局

2012年,华为出于对谷歌如果对其断供就会难以维持生产的顾忌,开始布局自有分布式操作系统。

2019年5月15日,华为被列入了所谓“实体清单”,谷歌Android 服务GMS对华为禁供。

5G迅猛发展,物联网时代来临,多年前的布局使华为抓住了最佳的发展时期。

鸿蒙发展 历史

总体来说,鸿蒙的技术现阶段优势在于开放,但劣势是生态。系统在分布式部署、时延和流畅性等方面具有优势,但最大短板生态。

构建一个成熟的生态是鸿蒙能否生存下去并取得胜利的关键所在。

技术上,鸿蒙系统使用微内核架构。内核是操作系统内最基础的构件,因此内核的设计对于操作系统的外部特性也有着至关重要的影响。

常见内核结构可以分为宏内核、微内核、混合内核、外内核等。

微内核是较新内核结构,但是它拥有着众多宏内核不具有的优良特性,吸引了很多研究者。

微内核与宏内核对比

微内核架构包含两类组件:核心系统和插件模块。核心系统负责通用功能,不因为业务的变化而变化。

插件模块负责实现具体的业务,可以根据业务的变化而改动和扩展。

微内核架构模式可以将其他应用程序的功能作为插件添加到核心应用程序,从而提供应用的可扩展性、功能分离性和独立性。

微内核架构通常具有以下特征:整体敏捷度高、易部署、可测性高、功能表现优秀、可扩展性强和不易开发。

鸿蒙系统设计

鸿蒙架构的另一个很大优势是依靠分布式软总线、分布式设备虚拟化、分布式数据管理、分布式任务调度等技术,可以实现多种类、多数量的设备之间硬件的互助和资源共享。

分布式数据管理

分布式软总线

分布式设备虚拟化

鸿蒙系统设计初衷是为满足全场景智慧体验的高标准链接要求,可适配手机、平板、电视、智能 汽车 、可穿戴设备等广泛的终端设备, 将在未来万物互联的智能 社会 中打造下一代操作系统。

鸿蒙当前和未来架构

在技术特性上,鸿蒙有着 一次开发,多端部署 的特点。

在鸿蒙OS的框架层提供了用户程序框架、Ability框架和UI框架。它们可以支持多终端设备业务逻辑和界面逻辑的复用,这样应用跨设备的开发效率也就得到了提框架层升。

另一个特点是 统一OS,弹性部署 。鸿蒙os通过组件化和小型化的设计方法,使得针对各种类型的设备可以按需求选择合适的部署方案。

鸿蒙支持多种组件配置方案:1、支持各组件的选择,组件并不是必须被部署,可以按照需要选择合适的部件;

2、支持组件内功能集的配置,可以按照需求选择性的给组件配置功能集;

3、支持组件内功能集的配置,可以按照需求选择性的给组件配置功能集。

除了微内核,鸿蒙的另一大卖点是方舟编译器。方舟编译器可以方便安卓APP移植到鸿蒙系统。

方舟编译器是华为自主研发的编译器平台,它将以前边解释边执行的低效运行方式转变为将Java、C、C++等代码一次编译成机器码的高效运行方式,同时也实现了多语言的统一。

华为官方数据表明,方舟编译器能提升24%的操作系统流畅度、44%的系统响应能力和60%的三方应用操作流畅度。

华为当前的业务可分为四大领域:消费者业务、运营商业务、企业业务和云服务四大业务领域相互协同、共同发展,拼接成华为生态战略布局版图。

华为生态

鸿蒙系统的生态可以概括为1+8+N。1+8+N战略的核心是1 , 即智能手机。智能手机作为鸿蒙生态的核心部分,凭借华为海思自研的麒麟芯片,为其他设备终端提供相应的通信支撑。

正是因为万物互联的场景中手机的重要性,华为始终以全球手机市场第一作为目标。

8是指 PC、平板、智慧屏、音箱、眼镜、手表、车机、耳机 ,这8项将由华为公司亲自研发和参与市场,并且会追求市场领先地位。

N是 摄像头、扫地机、智能秤等外围智能硬件 ,涵盖移动办公、智能家居、运动 健康 、影音 娱乐 、智慧出行五大场景模式。

这些领域是与鸿蒙生态的合作伙伴进行共同开发,在合作过程中,鸿蒙生态将会提供HiLink协议标准,HiAI组件,Lite OS等技术平台,同时将鸿蒙操作系统开源。

2019年8月,全球第一款搭载华为鸿蒙系统的荣耀智慧屏正式发布。

荣耀智慧屏作为当时首个搭载鸿蒙系统的终端产品,突破了传统电视的概念,搭载有鸿鹄818智慧芯片等三颗华为自研芯片和升降式AI摄像头,内置华为系统级视频通话功能,开创了大屏和手机的新交互方式,除了可联控智能家居,还能实现智慧双投、魔法闪投、魔法控屏等功能。

鸿蒙OS + 智慧屏

2021年4月,华为的鸿蒙OS智能座舱正式发布。

鸿蒙OS车机操作系统是面向车的操作系统,与手机同平台。鸿蒙OS智能座舱搭载有一芯多屏、多用户并发、运行时确定性保障、分布式外设、车载网络、多部件等多种应用,提供差异化启动恢复、极速启动、多用户切换、声场控制、多部件协同等功能。

鸿蒙OS智能座船可以及时升级应用,基于其HMS-Automotive平台,开发者能够提供更好的服务与应用体验,实现人、车、家的全场景协同。

鸿蒙OS + 智能座舱

同时面向车载场景增量还开发有HOS-A子系统,可实现账号、多模输入、用户程序框架、元能力框架、多媒体、公共通信、车机业务启动恢复等功能,使得自动驾驶、导航、视频、音乐和通话等业务能够在智能座舱和其他设备之间实现无缝切换,让智能驾驶变得简单、有趣、享受。

发布会现场透露,目前智能驾驶生态平台已获得30+硬件生态、50+应用生态合作伙伴支持,未来鸿蒙OS将继续加大与 汽车 及应用领域的开放与合作力度,与产业链一起打造智能驾驶的极致体验。

2020年7月,华为消费者业务CEO余承东,与美的集团董事长方洪波正式签署《战略合作框架协议》,双方在智慧家居领域达成“全方位战略合作关系” 。

2021年4月,作为首批支持鸿蒙系统的家电产品,美的家用智能蒸烤箱S5mini正 式上市,该智能蒸箱搭载了华为鸿蒙系统,同时搭配了鸿蒙系统的一碰连特性,可以快速完成配网。

配网成功后,手机会自动跳转到鸿蒙系统内置的轻量化产品页面,用户可以在页面中获取跟产品搭配的定制食谱,根据菜谱准备食材,即可一键启动机器、机器自动烹饪。

智东西 认为,数字商业的终极竞争,归根到底就是操作系统的竞争,全球市值前3名的苹果、谷歌和微软,他们共同特点就是都具备操作系统。鸿蒙的推出,长远来看决定了能否在异构计算时代中取得第四张操作系统入场券的关键。

鸿蒙3.0系统与华为仓颉编程语言,从系统级6层架构上深入分析

华为的鸿蒙系统3.0开始对9款手机的公测,这其中就包括p50系列的3款手机,mate40系列的5款手机,和一款12.6英寸的matepad pro。这让咱手里拿着的mate30备受冷落。但我自己心里就更加期待华为的仓颉编程语言。这么屈指一算,仓颉编程语言从4月2号开始内测以来已经两个多月了。因此,我预判,鸿蒙系统3.0会跟仓颉编程语言一起来到咱们的身边。

那么在准备迎接鸿蒙系统3.0和仓颉编程语言之前,我这一期帮大家打一个坚实的基础。我相信许多朋友当说起来操作系统或者是编程语言的时候,脑子里其实是有点支离破碎,或者是一头雾水。我帮助大家从一个宏观的角度去鸟瞰,去把握和理解计算机科学体系中的坐标,让你独具一双慧眼,单单靠着你的直觉就能获得专业的视角。计算机科学包括六层架构,操作系统在第四层上,华为仓颉编程语言这样的应用级编程语言则处在第五层上。

咱们先从底部开始,所谓万丈高楼平地起嘛。咱们来先看基础:信息理论。任何学科的基础都是数学,当然计算机科学也不例外。这第一层就是关于数学理论的。咱们日常用的是十进制,计算机则是由0和1构建起来的是二进制。那数学也很简单,就是关于0和1的加法。比如1加1,在十进制中是等于2,而在二进制1加1等于10,这就是所有的数学基础,也就是这么简单。

但是还有更加往上抽象的一个层面的基础,就是咱们在高中时候学习的“布尔代数”。看似不起眼的“布尔代数”研究的是机器如何思考,如何让机器来获得智能这样的问题。

布尔在1854年就解决发表一篇“研究人类的思考规律”的论文,提出了“布尔代数”,为机器如何思考打下了理论基础。

布尔当时的想法很简单。他认为人是理性的,那么人是按照理性逻辑来思考问题的。于是,如果他能把大脑思考问题的逻辑,提炼抽象出来的话,那么是不是就能用这逻辑在大脑之外去思考呢?布尔的这项雄心勃勃的构思就是人工智能的雏形。你想呀,如果把这个逻辑提炼出来用在机器机械零件上,机械零件就会开始思考。如果用在电路上,这个电路是不是也就开始思考了呢。布尔代数咱们就很熟悉了,我就在这里就不带展开,我前面有一期就专门来讲述了这个机器来如何用布尔代数来思考,大家感兴趣可以看下那一期,我在这不展开浪费时间。

再往上第二层就是硬件,布尔他把理论抽象出来,将布尔代数应用到电路上,电路是不是也就能开始思考?哎,到了1938年,香农就首次把布尔代数应用到了电路上,于是这个电路就开始思考了。从最早的真空管到半导体晶体管(我前面那一期也专门讲过“机器如何用晶体管来思考”)然后到集成电路,再到现在这个大型的集成电路芯片。我们知道麒麟9000芯片用的Arm架构的指令集,指挥CPU工作的指令又叫机器码。比如“加法”就是用一串数字机器码00000011来表示。

然而你会发现,用机器码来指挥这个cpu或者电脑工作太麻烦了。一般人哪里能记住像前面的6个0和后面两个1来表示加减乘除的加呢。

正是困扰于此,科学家就此提出来编程语言。最早编程语言是汇编语言。比如前面表示加法的机器码00000011,汇编语言中将其抽象为add。然而,汇编语言也需要大量的记忆,一个指令一个指令的对应,也是太机械了。再往前一步,往上一层抽象就是系统级的编程语言:面向过程的C语言。

一门编程语言所要做的一个主要工作就是在机器和我们人类思考之间建立一座桥梁。我们是人类的思考逻辑,机器是机械 式逻辑思考问题。越高级的编程语言越符合我们人类的思考逻辑,越初级的编程语言则越贴近机器的逻辑。因此,我们用高级的编程语言比如C语言,将想做的事情表达出来,它会自动转换成机器码。

我喜欢的编程发展史上的第二大古老的语言:Lisp语言。

就是直接使用我们的抽象思考的语言。比如重复地来做一件事,重复说五遍“Hello”这个单词。Lisp将重复抽象为dotimes,do是做, times是多次,dotimes反复多次做。看见没,编程语言成了我们抽象的思考工具。

当然,华为仓颉语言也是在编程语言这里,但不是系统级的编程语言,咱们后面再说

当在第二层硬件之上发展出来高级的编程语言,有了系统级的编程语言比如C语言之后。大家就发现,我需要一个操作系统来处理日常的基本任务,比如文件管理,进程管理,内存管理,设备管理和用户管理等等。于是科学家着手用编程语言写操作系统。而事实上C语言在1969年的发明,也正是为了移植与开发UNIX操作系统。C语言的设计者丹尼斯·里奇同时也是Unix操作系统的发明人。到了1991年Linus用C语言写了Linux内核,也是目前安卓和鸿蒙系统的内核。

华为的EROFS超级文件系统并入Linux内核之后,无论是Linux还是安卓都打上了20%的华为烙印。

操作系统再往上一层就是我们日常的应用。比如听歌、看视频等apps就是在操作系统之上。这也好理解,先有了操作系统,才有我们的各种应用。由此也能理解,为什么像鸿蒙系统3.0如此重要,因为应用程序要运行在上面。这些应用程序就是用华为仓颉编程语言等应用级编程语言开发的。不过,目前咱们手机上的应用程序都是用Java开发。未来鸿蒙系统将会使用自研的仓颉语言开发鸿蒙应用。

应用程序的主要功能之一是沟通和交流。我们用Email发邮件,用通讯视频聊天,而Web应用技术构建起来当前的互联网信息大厦。

好了,我们总结一下。计算机科学的六层架构。

第1层是信息理论,研究如何在大脑之外实现思考,布尔代数是人工智能的雏形。第2层是硬件,布尔代数应用到电路上,晶体管开始思考,将数以亿计的晶体管雕刻到集成电路CPU中,CPU的机器码指挥计算机工作。第3层编程语言,从枯燥难记的机器码里发展出来汇编语言,再到系统级的C语言,构建起来人类思考与机器逻辑之间桥梁。第4层操作系统,C语言不是凭空而来,是为了开发Unix操作系统而发明,而操作系统是计算机里最大的软件。第5层应用软件,日常所有的apps都运行在操作系统之上。仓颉编程语言是给鸿蒙系统开发应用程序的专属开发语言。第六层沟通互联,就是我们目前的互联网技术,在网络里看书、听音乐,点一份外卖等等。

这就是计算机科学六层架构,鸿蒙操作系统与仓颉编程语言各就各位。用架构去思考和看问题,不仅能心中有数,还能独具一双慧眼。

此时此刻,鸿蒙时刻——再说华为鸿蒙系统的那些事儿

2021年6月2日,对于华为和很多关心华为的人来说,都是一个重要的日子,因为千呼万唤的华为鸿蒙操作系统(HarmonyOS)正式发布,虽迟但到。就像HDC 2019上鸿蒙初次发布那样,准随着它的争议从未消失,且更随着手机鸿蒙系统的推出在即,有愈演愈烈之势。

在HDC 2019之后,我曾写过一篇《关于华为鸿蒙系统的那些事儿》的文章,此时此刻,我觉得是时候再说说华为鸿蒙系统那些事儿了——虽然我知道,在这个当口,写这样一篇文章很可能给我自己挖一个大坑……

不搞懂Android,你就看不懂鸿蒙

关于鸿蒙的最大争议点无非就是:“HarmonyOS是不是套壳Android?”要说不是,不服气的人肯定大把,要说是,那也一样不得了,那就一层层地说清楚。首先,让我们看看Google手中的Android操作系统是怎么回事。

回顾一下Android操作系统的起源。它是由知名IT人Andy Rubin于2003年10月成立的Android公司推出的产品,其本身是基于Linux内核开放源代码的操作系统;2005年8月,Google收购了Android公司;2007年11月,Android操作系统首次亮相,同时Google宣布以Apache免费开源许可证的授权方式,发布Android的源代码,Google牵头的OHA也正式创立(OHA,Open Handset Alliance,该组织最初由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成);2008年9月,Android 1.0版本正式推出,首款Android智能手机G1发布,宣告了一个新的时代开启。现在,Android操作系统已经成为智能手机市场第一大操作系统,也广泛使用在智能手机之外的很多设备上。

Android的起源和开源两个字分不开。是的,Android系统底层所使用的Linux内核,是必须遵照GPL协议进行开源传播的(GPL协议,General Public License,简称GPL,通用性公开许可证)。这个协议中的一项原则就是:确保软件自始至终都以开放源代码形式发布,保护开发成果不被窃取用作商业发售。

因此,采用Linux内核的Android操作系统,也不能违反这个协议, 前边提到的Android免费开源许可证授权,就是指Google要向使用该操作系统的智能手机厂商提供开放的源代码,即AOSP(Android Open Source Project),但这部分源代码并不代表“Android”操作系统的全部。

Google当初看上Android,可不是想要将这个开源系统作为一个免费的“慈善”项目来推动,而是在意Android这个平台的商业化潜力。于是,在收购了Android系统之后,Google就按自己的设想打造Android系统,即在开源代码的部分之外,基于自家在移动互联网上强大的控制力,把Gmail、Maps、Google Play、YouTube、Chrome这些我们耳熟能详的应用服务整合为GMS(Google Mobile Services)服务包植入,从而形成了这个系统的核心竞争力—— 简单理解Android系统的本质,就是AOSP+GMS的合体。

换句话说,智能手机厂商可以自由使用AOSP提供的免费源代码进行自家操作系统的开发,但想要卖得好,拥有更多的用户,却离不开GMS包含的应用,在Android的商业模式中,Google有一套严格的机制在免费开源与付费授权之间取得平衡的。

之前有数据显示,从2008年~2016年间,Android操作系统为Google供贡献了高达310亿美元的营收,而利润更是高达220亿美元,也就是说,数以亿计的搭载Android操作系列和GMS服务包的智能硬件们,都成为了Google帝国的现金奶牛。

只是,Google这个庞大的商业帝国,却总有不能企及的地方——中国大陆。早年因为不愿意服从法律监管,Google几乎将整个互联网服务都移出了中国大陆市场,但是Android操作系统却随着移动互联网和智能手机的发展,在中国市场壮大。

这里有一个非常有意思的现象:因为Google不能在中国提供服务,中国的智能手机厂商们,早就习惯了自主开发没有GMS,但又包含完整本地化服务的自主UI,但因为要面向全球市场,所以又会在自主UI中保留Google GMS框架,这样就可以在海外市场很方便地接入GMS并激活一系列的服务。

因为GMS服务不能进入中国大陆市场,手机厂商们会在这个基础上接入很多自己的服务,比如应用商店、主题商店、内容、支付、推送等,可是没有Google Play的应用审核机制,国内的软件生态是啥样大家都看到的,到最后手机厂商自己都受不了了,才有了“统一推送联盟”、“软件绿色联盟”之类的组织,且随着国家监管力度的加强,现在已经好多了。

随着Android的市场地位越来越强,Google也开始做一些小动作——毕竟这家公司的口号在2015年就从“Do not be evil”变成了“Do the right thing”。如将一些关键特性和重要代码的更新放入GMS包的版本迭代中,比如部分组件、驱动等,有意拉开Android与AOSP的代数差距,从而凸显自己的地位,进一步强化对Android生态的控制力。所以,为了能让自家的UI能有更强的市场竞争力,智能手机厂商们对Android的魔改从来就没有停止过。

回到华为。2019年5月16日,华为被美国商务部列入实体清单,被视为美国对华为终极打压的开始,首当其冲的就是销往全球的华为新款手机不能再使用Android系统。

是的,华为的确是不能使用Google的Android操作系统了,但更具体的描述应该是: “华为不能在自家手机新品中内置GMS服务,但AOSP源代码的使用丝毫不受影响”, 而非那段时间盛传的华为手机从此变砖。但是,无法内置GMS,对于华为手机在全球市场的销售影响是实实在在的,但好在对于系统本身进化影响并不大——现在让我们来到第二个话题:“华为掏空Android。”

华为真的掏空了Android?

华为是否掏空了安卓?这应该是每过一段时间就会被拉出来遛一圈儿的问题。其实在我看来, 答案:是也不是。为什么说不是?因为AOSP还在呢,华为从来没有说过要排斥这个开源项目的,毕竟在这个软件生态上运行着数以百万计的应用,真要把这个掏了,难不成华为要自己做一个全新的软件生态,脑子抽了还差不多。为什么说是?因为华为对Android操作系统的改变也是真实的,很多谷歌做的东西,很多都被华为自己的东西替代了。

这个涉及一个主角, 即EMUI,华为自主开发的UI,或者说两个主角也行,EMUI+HMS。 在这其中,现任华为消费者BG软件部总裁王成录王博带领的EMUI团队显得尤其重要,从他2016年加入这个团队之后,EMUI的根本性改变就发生了,用他的话说:“EMUI不仅仅是一个UI,而是一个平台。”EMUI是如何从UI变为平台的呢?简单梳理一下:

-EMUI 4.X时代,主要的变化还只是TEE OS(即用于指纹的TustZone)以及SensorHub这样基于硬件功能的模块上;

-EMUI 5.X时代,这是一个战略级别的关键版本。解耦Android底层组件,精简各子模块。虚拟机在这个版本也得到了优化,特别涉及了垃圾回收机制(GC)、AOT(运行前编译)、数据库优化(IO并行)等。在这个版本,新的文件系统F2FS(针对闪存推出,大幅度减少文件碎片),还有UltraMemory(即4GB运存达到友商6GB运存效果)的推出,通过对各个Android底层技术模块的深度开发,让EMUI团队敢于将“十八月不卡顿”放到了公众面前,没记错这就是EMUI第一个大争议点出现;

-EMUI 8.X时代,人工智能技术加入系统,iAware借着算力,整个系统的后台管理模式更合理,图形引擎得到升级,即半路加入的GPU Turbo,这是EMUI对Android系统全栈图形模块修改的开始,EROFS超级文件系统也在此期间亮相开源社区;

-EMUI 9.X时代,也是“Turbo”的时代,GPU Turbo 2.0、CPU Turbo、LinkTurbo都是在这一代出现的,系统性能继续优化,EROFS正式加入,连接能力得到强化。2019年MWC上,华为“1+8+N”智慧全场景战略首次浮出水面,在这背后,鸿蒙的研发其实已经悄悄进行了不短的时间了;

-EMUI 10.X时代,分布式技术、软总线、超级终端这一系列的概念出现了,它在HDC 2019上推出,伴随着它一起发布的就是鸿蒙1.0,其时还是一个半成品,只能叫操作系统内核。只是因为2019年5月16日的事件,它不得不作为战略产品提前亮相,在推出的时候,鸿蒙就直接宣布将会开源;

-EMUI 11.X时代,鸿蒙来到了2.0版本,但HDC 2020的主角是HMS和AppGallery,不但前边提到的一系列系统底层的能力变化全部被涵盖其中,连Google最引以自傲的营收来源GMS服务、Google Play也被替代了。

看完上边这个简单的梳理,你是不是对本章节开头的那个问题概念更明晰了? 如果说华为掏空了Android,没错,华为EMUI团队觉得Google做得不好的地方,要么魔改,要么就干脆换掉,比如底层连接协议。 特别是在2019年5月16日之后,即EMUI10和11两代,这样的动作愈加突出,幅度也越来越大。

要说华为没有掏空Android,也没错, 因为现在华为完全自主运营的AppGallery应用商店,里边的应用都是基于AOSP规范开发,但又置入了HMS服务的华为版,目的就是为了解决这些应用在没有GMS支持下的消费者体验问题。 毕竟在全球范围内,华为已经积累了7亿多终端用户,在他们换机或是华为解决手机硬件产品问题之前,用户还是要继续使用这些华为手机和软件服务的。

到这里,为什么会有鸿蒙这个东西了应该也有答案了。 “低情商”的说法,它有点像是华为在EMUI进化过程中,用来解决多设备连接协作问题中的“副产品”;“高情商”的说法,它是包涵底层互联协议、芯片能力调用、多设备协同过程中交互界面等全方位解决方案的集合体,高效率的连接(HiLink)、低时延(HiLink)以及微内核(比如LiteOS)是它的三大特点,所以,从软硬件一体化的整体度来说,鸿蒙肯定就是一个全新的操作系统。

因为华为的工程师认为,当前物联网的连接协议太过碎片化,从业厂商开发理解能力参差不齐,所以最后出来的产品也就五花八门,这样的情况,将会严重影响华为“1+8+N”战略的推进效果,“1+8”都是华为自己的好说,“N”怎么办呢?那就交给鸿蒙来解决吧。

这是发布会后宣布的消息:2020年和2021年,华为按计划分两次把HarmonyOS的核心基础能力全部捐献给开放原子开源基金会,由开放原子开源基金会整合其他参与者的贡献,形成 OpenHarmony 开源项目——这和AOSP是不是差不多?这就是为了能让其他有兴趣加入华为“1+8+N”战略的设备制造和服务提供商能更好的理解这个生态系统。在2021年5月18日上海的华为HarmonyOS Connect伙伴峰会上,华为消费者业务AI与智慧全场景业务部副总裁杨海松还提到了鸿蒙的商业模式,包括免费认证服务这些内容,我有整理专访,大家有兴趣也可以了解一下。

在2019年发布鸿蒙1.0的时候,华为的确是没有那么快的计划将它放在智能手机上。HDC 2019之后对余承东的专访中,他是这样说的:“如果我们确认谷歌不再为华为提供操作系统,那么,我们可以在一夜之间通过升级,将所有的华为手机操作系统的内核更换为鸿蒙,但是我们现在并不打算这么做,因为我们还是希望可以让合作伙伴(主要是指美国公司)的利益最大化。”

但同时,他也说了三个“Ready”,意即华为是可以随时这么做,而在6月2日的发布会上,华为手机的鸿蒙升级计划是何等规模大家也看到了。同样的问题王博早些时候的回答也是:“做操作系统并没有难度,关键是商业模式的问题。”

时间来到2020年5月16日,美国针对华为的终极制裁到来,手机SoC芯片断供,蓬勃发展的华为手机业务随时面临停摆的问题。虽然现在看,华为还可以通过购买第三方公司的芯片,在全球继续推出4G手机产品,但GMS同样不能使用,出货量也会从过去的亿级下降到千万级,决定华为消费者业务未来的“1+8+N”也随之面临巨大的挑战。两年前还是商业模式的问题瞬间就变成生死存亡的关键,HarmonyOS变得意义更加重大,不得不发。

并肩前行的OpenHarmony和HarmonyOS

我相信有了前边两个部分的铺垫,再进入第三个部分,很多人的困惑应该会少很多。华为目前对鸿蒙这个操作系统的定义是: “HarmonyOS是新一代智能终端操作系统,为不同设备的智能化、互联与协同提供了统一的语言” ,它与我们使用的Android这种宏内核系统在思路上有着本质的区别。

宏内核操作系统我们用得很多,电脑上的Windows、手机上Android都是,它最大的特点是设备要装载这个操作系统,就得所有的系统组件全部加包一起装载,不管用不用得着,同时在运行时,系统也会依据内存大小,自动加载组件,响应速度是提升了,但会消耗极大的系统资源。

到2021年我们已经能见到最高达18GB RAM的安卓手机了,而在当前主流的Android 11系统描述中写到:“设备最小运行内存为512MB”。如果设备的运行内存小于512MB,要到不能用最新版本的Android系统,要么就只能用老版本——这也是为什么我们能看到有些车机还在跑Android 4.4版本……

但是鸿蒙的设想就恰恰是反过来,它从架构设计上就进行了全栈解耦,将庞大的操作系统打散,拆解成很小的颗粒,不同能力的设备只需要按自己的要求来选择相应的模块能力加载即可, 比如鸿蒙系统的前身LiteOS,它最小的体积只有10KB,你能相信它是操作系统么?可它就是!华为认为这是未来物联网时代和必然趋势,巧的是Google也同样这样认为,所以,足足被其孕育了5年的微内核操作系统Fuchsia,刚刚于近日才正式推送,它的目标就是替代Android和ChromeOS,从而更好地适应物联网时代的多样终端和生态。

为了更好地让合作伙伴与开发者适配设备与系统的能力,华为将采用鸿蒙系统的设备从L0~L5做了6个分级,其中从L0~L2这三个级别的设备,要么没有交互界面,要么交互和功能都非常简单,家电、手环就算这种设备,运行内存也非常小,甚至低到KB级,其被定义为瘦终端,它们采用的鸿蒙系统,代码百分之百来自华为,不包含AOSP的任何部分;而L3~L5这三个级别的设备,有交互界面,可应用扩展,手机、平板、笔记本电脑、车机、VR/AR等这些设备就属于富终端的类别,它们采用的鸿蒙系统,就会引用AOSP的部分代码。在这其中,手机无疑是功能最复杂的核心设备,会跑最多的应用,它引用AOSP顺理成章。

所以,这次发布的HarmonyOS是何物就好解释了。 华为软件团队开发出的OpenHarmony开源项目用来构建“1+8+N”生态的基础,在这个基础上,华为手机终端团队加入HMS服务包,提供全套华为服务和连接能力,包括嵌入HMS服务的华为版应用,再加上部分AOSP开源代码,支持Android广泛的应用生态,保证消费者可以继续无障碍地使用已有的应用 ,这就是今天发布的HarmonyOS。看到这里,是不是有人感觉眼熟?

没错,苹果现在M1平台的MacBook就差不多是类似的情况,它既可以运行macOS应用,又可以运行iOS应用,而HarmonyOS呢,既可以运行原来的Android(APK)应用,又可以运行鸿蒙平台开发的应用(APK)。所以,6月2日发布会王博演讲的最后一个环节的话不晓得各位注意到没有: “HarmonyOS是基于OpenHarmony的第一个公开发行版” ,也算是把两者的关系做了一个比较明确的定义了。

关于鸿蒙系统是否是完全自主开发,要是没记错,华为自己是从来没有说过这样的话,但“我们要站在巨人的肩膀上”之类的话倒是看到过不少, 这个巨人放在HarmonyOS上,就是AOSP。至于有人说到的鸿蒙上使用的代码老旧,经过前边两个章节的介绍你应该明白,这对现在的华为和EMUI来说并不太重要,因为Android操作系统最核心的模块,华为早就已经是脱离谷歌自己在做更新,包括HMS加入后,连应用验证都自己在做,依赖度已经非常低了。

所以,现在EMUI 11还只基于Android 10版本的AOSP代码,但其对比采用Android 11版本的友商系统体验如何,相信大家心里是有数的。只是因为环境的关系, 本来应该“慢工出细活”的事情,全部被按下了快进键,很多还没来得做的事情,也都因为时间不够没有完成,比如代码替换等,相信今年的HDC 2021上华为软工团队会有更多新消息放出。

选择在现在推出HarmonyOS,对于华为也是有风险的,早年阿里YunOS与Android商业生态的冲突让我们第一次理解到了Google对“开放”的态度。现在,HarmonyOS可能面临的情况也差不多,但好在华为有HMS和初具规模的AppGallery可以进行一些对冲。

但对比这样的风险,真正的风险还是时间。从2020年5月16日算起,到现在已经过去了一年,消费者的换机周期是28个月左右,留给华为以手机产品为中心推进“1+8+N”战略的时间并不多,在余下的短短1~2年时间里,华为除了继续保留尽可能多的存量用户,还需要完成去手机中心化的“1+8+N”战略,还需要团结尽可能多的手机厂商来形成新的中心,从之前与杨海松的对话来看,新战略中的“1”,很有可能就是App了。

但另一方面,杨海松也说过: “华为擅长做产品而不擅长做生态”,这也是一个现实的问题,以前华为做产品,秉持的是“进入一个行业,就一定要做到世界第一”的“霸道”原则,现在做生态,华为应该想的是如何交到更多朋友,合作共赢,姿态非常重要……

写在最后

“华为推出HarmonyOS,中国骄傲”,发布会之后,以此为主题,各种各样的鸡血文章、小视频又出现在各大内容平台上,好一场流量盛宴。类似的场景也出现在一年前,在他们口中,似乎华为能以一己之力,一夜之间厘清中国整个芯片产业的 历史 欠账。华为人并非没有看到这些,但现在的他们,哪里有功夫去理会这些论调,有太多事要做了。虽然这篇长文,也许看到的人和看完的人有限,但我觉得能把那些关于HarmonyOS的事儿解释清楚,足矣。


本文标题:鸿蒙架构开发设计,鸿蒙系统架构
分享地址:http://jkwzsj.com/article/dsgeeoi.html

其他资讯