harmonyos除了支持linux内核还支持那种内核

Python056

harmonyos除了支持linux内核还支持那种内核,第1张

内核层、系统服务层、框架层和应用层。

其中系统功能按照“系统 >子系统 >功能/模块”逐级展开。

在多设备部署场景下,各功能模块组织符合“抽屉式”设计,即功能模块采用AOP的设计思想,可根据实际需求裁剪某些非必要的子系统或功能/模块。

一、内核

内核子系统:

HarmonyOS采用多内核(Linux内核、鸿蒙微内核和liteOS三个内核)设计,支持针对不同资源受限设备选用适合的OS内核。

内核抽象层(KAL,Kernel Abstract Layer)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。

驱动子系统:

硬件驱动框架(HDF)是HarmonyOS硬件生态开放的基础,提供统一外设访问能力和驱动开发、管理框架。

二、系统服务层

系统服务层是HarmonyOS的核心能力集合,通过框架层对应用程序提供服务。该层包含以下几个部分:

1、系统基本能力子系统集:

为分布式应用在HarmonyOS多设备上的运行、调度、迁移等操作提供了基础能力,由分布式软总线、分布式数据管理、分布式任务调度、方舟多语言运行时、公共基础库、多模输入、图形、安全、AI等子系统组成。

其中,方舟运行时提供了C/C++/JS多语言运行时和基础的系统类库,也为使用方舟编译器静态化的Java程序(即应用程序或框架层中使用Java语言开发的部分)提供运行时。

(8月起谷歌强制推行APP进行AAB格式转变 鸿蒙再遇新挑战)方舟编译器受阻。

2、基础软件服务子系统集:

为HarmonyOS提供公共的、通用的软件服务,由事件通知、电话、多媒体、DFX(Design For X) 、MSDP&DV等子系统组成。

harmonyos是华为鸿蒙系统。

鸿蒙OS是华为公司开发的一款基于微内核、耗时10年、4000多名研发人员投入开发、面向5G物联网、面向全场景的分布式操作系统。鸿蒙的英文名是HarmonyOS,意为和谐。不是安卓系统的分支或修改而来的。与安卓、iOS是不一样的操作系统。

性能上不弱于安卓系统,而且华为还为基于安卓生态开发的应用能够平稳迁移到鸿蒙OS上做好衔接——将相关系统及应用迁移到鸿蒙OS上,差不多两天就可以完成迁移及部署。

这个新的操作系统将打通手机、电脑、平板、电视、工业自动化控制、无人驾驶、车机设备、智能穿戴统一成一个操作系统,并且该系统是面向下一代技术而设计的,能兼容全部安卓应用的所有Web应用。若安卓应用重新编译,在鸿蒙OS上,运行性能提升超过60%。

鸿蒙OS架构中的内核会把之前的Linux内核、鸿蒙OS微内核与LiteOS合并为一个鸿蒙OS微内核。创造一个超级虚拟终端互联的世界,将人、设备、场景有机联系在一起。同时由于鸿蒙系统微内核的代码量只有Linux宏内核的千分之一,其受攻击几率也大幅降低。

技术特性

1、分布式

HarmonyOS具备分布式软总线、分布式数据管理和分布式安全三大核心能力。分布式安全确保正确的人、用正确的设备、正确使用数据。当用户进行解锁、付款、登录等行为时系统会主动拉出认证请求,并通过分布式技术可信互联能力,协同身份认证确保正确的人。

HarmonyOS能够把手机的内核级安全能力扩展到其他终端,进而提升全场景设备的安全性,通过设备能力互助,共同抵御攻击,保障智能家居网络安全;HarmonyOS通过定义数据和设备的安全级别,对数据和设备都进行分类分级保护,确保数据流通安全可信。

2、开放性

有观点认为,从技术架构上来说,微内核架构的鸿蒙可能更像苹果的iOS。但王成录表示,鸿蒙和苹果最大的不同是,苹果生态是封闭的,而鸿蒙则会开放。会与所有可能的伙伴一起,把鸿蒙生态共同做成功。

鸿蒙(Harmony OS)是华为自2012年开发的一款可兼容Android 应用程序的跨平台操作系统. 截至2019年6月14日, 华为高管证实了新系统的存在以及华为在全球申请“Hongmeng”商标一事, 并且说明主要是用于物联网, 未必会发展为手机系统. 2019 年 8 月 9日华为开发者大会上,华为消费者业务首席执行官余承东正式宣布发布自有操作系统鸿蒙,内核为Linux内核、鸿蒙微内核和LiteOS. 未来将摆脱Linux内核和LiteOS, 只有鸿蒙微内核.

从此,Harmony OS(鸿蒙操作系统,简称鸿蒙)正式进入公众视野. 与支持者相对的各种黑化声音同样不绝于耳,相对于这些无脑黑,节奏黑, 难道我们不能好好的找找资料,真正了解鸿蒙是个啥. 后面将从 Linux 内核, 鸿蒙微内核, 兼容 Android, 全场景交互体验等方向来一次 HarmonyOS 的学习之旅...

PS: 这几篇所有整理的内容都基于网络上的公开资料(维基百科等),为了基本上所有非技术人员也都能无障碍看懂.

要想了解操作系统,必然先了解一下操作系统的发展 历史 ,不过是不查不知道,一查吓一跳,这世上的操作系统是真的好多啊,因此肯定是没必要一一道来的, 一些 历史 脉络部分,我这里大致的梳理一下一些关键的标志性系统,辅助我们来了解 HarmonyOS,从此不再人云亦云.

目前大家接触比较多的常见操作系统也就那几个, 大致分类有, 电脑端: Unix, Linux, MacOS,Windows, 手机端:Android, iOS.

1969年在AT&T的贝尔实验室开发Unics, 1973年, 用C重新编写后正式命名为 Unix, 标志着通用操作系统的到来, 一开始和学术界有合作(加州伯克利大学),从而快速在各大高校传开

1977年,伯克利大学的Bill Joy 教授获得Unix的核心原始码后, 修改成适合自己机器的版本,并增加了编译工具和很多功能软件,最终命名为BSD

1979年 AT&T 公司发行Unix7.0, 出于商业考量将Unix的版权收了回去. 这也导致了BSD的后裔一直跟AT&T 相关公司产生了法律纠纷,直到1994年1月才了结.

1994年6月,4.4BSD 以两种形式发布:可自由再发布的4.4BSD-Lite, 不包含AT&T源码另有 4.4BSD-Encumbered,跟以前的版本一样,遵照AT&T的许可证。几种基于4.4BSD的包(比如FreeBSD、OpenBSD和NetBSD)也得以继续维护。

这期间, 学术界自力更生, 在1986年一个叫 Andrew Tanenbaum(安德鲁·塔能鲍姆)教授就参照Unix的功能编写完成并发布一个Minix系统, 用于教学用途, 并于次年发布了相关书籍。

1991年,一个叫 Linus Torvalds 的学生对只能用于教学用途的 Minix 系统不满足,于是就基于Minix开始编写自己操作系统, 并于9 月份开源, 也就是 Linux。

Linux 有多牛, 今天的Linux系统掌管着超级计算机和大部分服务器、主机,再加上 Android 的智能移动设备, 还有桌面系统,嵌入式设备,以及纯粹的上网本, Linux王国的领土几乎扩展到了整个网络系统,搜索,购物,聊天等全球数十亿人离不开的服务,都运行在Linux之上。

到此,所以鸿蒙的内核里有 Linux 内核的存在,有毛病吗?

首先,前面有了解到 Linux 之所以成功, 在于其技术的更加先进,但是这种先进它并不是颠覆,他本身就是基于 Minix 的基础之上, 它在一开始的一段时间内是必须要有 minix 才能运行的起来的,

其次, 是有这么一个长达两年多的 Unix 的版权之争, 从而给 Linux 提供一个绝佳的成长时间, 毕竟就像Linus 自己说的那样,当时如果有可用的 386BSD,他也不会选择自己再去重新开发一个 Linux.

再者, Linux 1991 年开发并开源出来, 到 1993 年大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。到鸿蒙正式公开的2019年, Linux 内核已有大约2500万行代码。

对比之下, 挺有意思的是, 余承东也说过 HarmonyOS 一开始并没有打算放到手机上, 相较于 Unix 闭源后逼出来的这个 Linux, HarmonyOS 却是美国的打压和制裁逼出来的, 而鸿蒙的今后的成长, 我们是可以共同见证得到并也可以参与得了的.

思考二: Linux 这么牛,为什么在电脑时代的桌面操作系统上,没有竞争过 Windows 和 MacOS 呢? 但是到了手机时代, Linux 内核的 Android 却可以和 iOS 平分天下? 原因同样也很多, 其中也有两个公认的关键点,

另一个最重要的关键点则是有一家强有力的公司所支撑的系统开发和生态建设, 桌面时代 Windows 有微软,MacOS 有苹果, Linux 呢是一个松散的开源社区, 但是到了手机时代,iOS 有苹果, Android 有谷歌

这篇先留点坑,鸿蒙的微内核和智能生态先不表, 我们依然从 Linux 这条线, 再来看一下 Android

大家一般都知道的, Android 是一个基于 Linux 的、由 Google 主导的开源系统。那么为什么谷歌还能掐华为的脖子,而华为却还是能兼容 Android 呢?

其实严格意义上来说,Android=AOSP+GMS, 谷歌的手机 Pixel 出厂自带的系统即为Android,而一般来说,谷歌在自己(主导)开发的新一代Android系统成型时,都会放出其中的aosp代码。也就是Android系统等于开源的aosp,加上额外的闭源部分(其中包括GMS)的组合。AOSP 全名为Android Open-Source Project, 华为的开放源代码 OpenHarmony 是一种概念的. GMS 全名为 Google Mobile Service(谷歌手机服务),而这也就是谷歌限制华为的关键之处,GMS 是谷歌的应用和服务全家桶,包括电话,邮件,应用商店等一系列应用和消息推送服务,海外的手机没有这些东西,就跟砖头没什么两样了.

这个服务本身在国内是无法使用的, 国内的各种定制 ROM(如小米的 MIUI,华为的 EMUI 等)都是基于AOSP 加上自家的云服务的定制修改.各大品牌的操作系统如下:

苹果--iOS

谷歌--Android(AOSP+GMS)

三星--Android(AOSP+GMS)

小米--MIUI(基于AOSP)

OPPO--Color OS(基于AOSP)

VIVO--Funtouch OS(基于AOSP)

一加--H2 OS(基于AOSP)

锤子--Smartisan OS(基于AOSP)

魅族--Flyme(基于AOSP)

联想--ZUI(基于AOSP)

华为--国内: EMUI(基于AOSP),国外 Android(AOSP+GMS), HarmonyOS2

其一,看到这里,那些一直老是质疑鸿蒙就是安卓(AOSP)套壳的质疑是怎么回事,估计大家也都清楚了.其实啊,大家都知道,技术发展的现在,开发一款系统并不能难倒这些 科技 大厂,生态的支撑才是决定一个体统生死的关键,鸿蒙兼容安卓,有错吗?鸿蒙兼容安卓本来就是一个正确的决策嘛. 当然,这里是在做科普,而非为了争辩什么. 因为其实有些东西它就在那里,有公开的资料.

其二,看到这里,其实也能看到国内的手机厂商没有第一时间去响应鸿蒙一个原因了,一个明显的问题就是支持鸿蒙是有两套方案的:一是组织团队基于Open Harmony开发呢?还是说直接放弃已有的生态直接用HarmonyOS2?如果是你,你会第一时间选择这其中的一项吗?最近魅族宣布接入鸿蒙的,不是魅族手机,而是其Lipro品牌下的智能家居生态产品。

关于生态还是放到下次在统一聊,还是回到主线,我们再来梳理一下安卓的大致 历史 。

2005年 7 月 11 日,Google 收购了 Android 科技 公司,Android的关键人物包括安迪·鲁宾、利奇·米纳尔和克里斯·怀特,以及所有Android 科技 公司的员工都一并加入Google,作为收购的一部分。

2007年11月5日,在Google的领导下,成立了开放手持设备联盟(Open Handset Alliance),那是包括Google在内的 科技 公司联盟,其他成员包括HTC、摩托罗拉、Samsung等设备制造商,无线运营商则包括Sprint及T-Mobile,芯片制造商高通及德州仪器,目标是为移动设备开发“首个真正开放和全面的移动设备平台”。随后,其他厂商加入,包括Broadcom、Intel、LG、Marvell等。联盟开放手持设备联盟的创建目的是为了创建一个更加开放自由的移动电话环境。而在开放手持设备联盟创建的同一日,联盟对外展示了他们的第一个产品:一部搭载了以Linux 2.6为核心基础的Android操作系统的智能手机。

2008年12月9日,新一批成员加入开放手持设备联盟,包括ARM、华为、索尼等公司.

为了跟iPhone 3G能互相媲美,诺基亚和黑莓手机于2008年均宣布有关触摸屏的智能手机的信息,Android的焦点最终也转向触摸屏。第一款运行Android系统的商用智能手机是HTC Dream,亦名为T-Mobile G1,该智能手机于2008年9月23日发布

同时,一个负责持续发展Android操作系统的开源代码项目成立了AOSP(Android Open Source Project)。除了开放手持设备联盟之外,Android还拥有全球各地开发人员组成的开源社区来专门负责开发Android应用程序和第三方Android操作系统来延长和扩展Android的功能和性能。

之后便是大家熟悉的各种基于 AOSP 的安卓智能机出现在了大家的手上.

至此,大家应该真正都明白 Android 和 AOSP 的关系了,也能理解 OpenHarmony 和 HarmonyOS2 的关系了吧.

OpenHarmony 是不兼容安卓的,至于很多人一直还在质疑 HarmonyOS2 是安卓套壳这个事, 我是有点奇怪的, OpenHarmony的开源代码已经放出来了, 华为的官方解释也就是在那里?他们都视而不见.HMS Core(华为移动服务)是基于华为终端设备和安卓平台,对应用开发者开放并提供各种服务能力的移动服务框架。, 适用产品是手机和平板, 并且其升级不涉及系统版本,HMS Core (华为移动服务)同GMS(谷歌移动服务)一样,可以在安卓开源项目(安卓系统)上运行,支持安卓应用,但部分需要GMS支持的安卓应用,在HMS Core平台下可能无法运行。

作为结尾,想说明一下,到现在为止,所有的关于对鸿蒙的解读还只是按照安卓的框架和场景设定来思考的, 实际上,鸿蒙的定位是服务于物联网. 关于鸿蒙微内核,全场景交互体验我们放到下一篇,这里还涉及到 iOS,以及谷歌的新系统.