鸿蒙是一个怎么样的操作系统,真的是安卓套壳吗?

news/2024/7/21 10:20:57 标签: harmonyos, android, 华为, 鸿蒙

鸿蒙项目正式推出以来,就一直有各自声音,有看好的,认为鸿蒙的出现将会成为一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展;也有的人在唱衰,觉得鸿蒙发展不起来,甚至认为鸿蒙只是安卓的换皮、套壳。

那事实是怎么样的?鸿蒙与安卓之间是什么样的关系?

1.操作系统的发展历史,万物互联时代需要一个全新的操作系统

整个操作系统的发展大致经历了3个时代:

**(1)PC时代:**主要以计算机为主,用户规模从1970年的10亿增长到1990年的30亿。这一时代诞生了Windows、Linux、MacOS等操作系统。由于Windows操作系统的广泛应用部署,微软于20世纪90年代成为全球市值最高的公司。

**(2)移动互联网时代:**随着智能手机的普及,操作系统正式进入了移动互联网时代,苹果推出了IOS操作系统,支撑苹果成为全球市值最高的科技公司;谷歌2005年收购了Android公司,并持续地进行研发投入和版本迭代,如今Android操作系统已经成为了世界上发行量最大的移动智能操作系统。

**(3)万物互联时代:**随着越来越多的设备接入接入互联网,单一操作系统很难适应多样化的智能终端、各种复杂的应用场景的需求。谷歌、华为等各大企业纷纷进入物联网操作系统领域,并持续加大这方面的投入。

谷歌从2016年开始研发基于Zircon微内核的Fuchsia操作系统,可以取代为移动设备设计的 Android,计划用于个人移动设备、IoT设备等不同算力和需求的场景。

华为于2019发布了基于物联网的鸿蒙操作系统HarmonyOS,随后于2020年正式发布了开源版本,也就是OpenHarmony,面向全场景、全连接,适用于各类智能设备。

2.鸿蒙发展历史

2012年,华为总裁任正非表示:”华为做终端操作系统是处于战略的考虑”,鸿蒙操作系统的概念首次出现在大众视野。

2016年5月,鸿蒙正式在华为公司的软件部内部立项并开始投入研发。

2019年8月9号,华为正式发布了HarmonyOS 1.0,该系统率先部署在智慧屏上。

2020年9月10日,华为在HDC大会上发布HarmonyOS 2.0。该版主要包含三个方面做出重大提升:分布式的软总线、分布式的数据管理以及分布式的安全。

同年6月,由工信部牵头的开放原子开源基金会正式成立,也是国内首个开源软件基金会。华为将HarmonyOS2.0中的基础能力部分开源出来,并捐赠给开放原子开源基金会,正式成立了OpenHarmony开源项目。

2023年4月,OpenHarmony发布了3.2Release版本,全面支持复杂标准带屏设备。
在这里插入图片描述

此外,在2023年6月,OpenHarmony发布了4.0Beta版本,ArkUI进一步完善组件能力和效果,并提供首批API Level 10接口。正式的4.0Release版本则预估在2023年9月或者2024年发布。

3.鸿蒙、HarmonyOS、OpenHarmony三者关系

从某种意义上来说,鸿蒙包括HarmonyOS和OpenHarmony。

2016 年 5 月,华为消费者 BG 软件部开始立项研发“分布式操作系统 1.0 版本”,这就是鸿蒙系统的雏形。

考虑到华为设备的现有数量和鸿蒙系统初期软件生态的不完善,华为鸿蒙系统技术上兼容Android应用,同时集成了华为自身的能力,包括HMS等,形成了一个可以在华为手机、智慧屏、平板等设备上运行的操作系统,也就是HarmonyOS,该系统不开源。

随着华为开源战略的布局,为确保鸿蒙系统能有一个良好的生态,吸纳更多共建参与,华为鸿蒙系统的基础能力部分开源出来,开源部分也就是OpenHarmony。该部分为华为自研项目,不兼容Android生态。

所以,一般OpenHarmony指开源鸿蒙,HarmonyOS指华为闭源鸿蒙,两者在应用框架上都采用ArkUI开发框架,应用开发上互相兼容。

随着OpenHarmony生态的完善,OpenHarmony会逐步替代HarmonyOS,最终形成一个统一开源鸿蒙的生态。

4.鸿蒙是安卓套壳吗?

前面提到鸿蒙系统,或者说HarmonyOS为了解决前期软件生态的不完善、没有足够多的应用的问题,所以从技术上兼容Android应用。但是HarmonyOS能跑安卓应用并不能说明HarmonyOS是套壳安卓

我们可以以一棵树来做类别,鸿蒙的技术底座是基于OpenHarmony,这是鸿蒙这棵树的根、也是躯干。

鸿蒙这棵树要长出鸿蒙果实,需要土壤、需要一定时间的培育。而在这之前,我们需要马上可以食用的果实(大量的应用),怎么办?

于是,华为鸿蒙这一颗树上,采用嫁接技术嫁接了安卓的一些枝干,从而能在鸿蒙这棵树上长出安卓的果实(支持安卓应用)。

但是,我们回过头来看,鸿蒙这一颗树的根、躯干都是OpenHarmony、上面也逐渐长出鸿蒙的果实。虽然它现在某些枝干上采用了嫁接技术长出了安卓的果实,但是不能说这棵树是安卓

据悉、华为明年将会发布HarmonyOS NEXT版本,该版本将会砍去所有安卓的枝干,不再技术上兼容安卓。

到时,我们可以看到鸿蒙之树将结出丰硕之果!

5.OpenHarmony与Android的对比

Android是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。

在系统架构设计之初,OpenHarmony定位就不是Android的替代品,OpenHarmony的目标是构建一个面向万物互联时代的分布式操作系统,与Android并非同一个赛道。

两者在系统架构设计上比较相似,不过OpenHarmony在传统的系统架构上新增了分布式相关能力,如图所示。

在这里插入图片描述

可以看到,OpenHarmony有着自己一套的架构设计和实现,从开发语言、运行时、应用框架等都不同于Android,两者是完全不同的操作系统。

(1)内核对比

Android:基于 Linux 内核,程序的安全性、网络协议、内存管理、进程管理、驱动程序都由 Linux 内核所提供。另外,Android Runtime(ART)就是依靠 Linux 内核来执行底层功能的,其中包括线程和低层内存管理。

OpenHarmony:采用多内核设计,支持针对不同资源受限设备选用适合的OS内核。内核抽象层(KAL,Kernel Abstract Layer)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。

(2)运行时对比

Android Runtime (ART) 是 Android 上的应用和部分系统服务使用的托管式运行时。ART 及其前身 Dalvik 最初是专为 Android 项目打造的。作为运行时的 ART 可执行 Dalvik 可执行文件并遵循 Dex 字节码规范。

方舟eTS运行时是OpenHarmony上默认的ArkTS语言运行时,提供完备的C++交互ArkTS NAPI和各种高性能的垃圾回收器,驱动着万物互联时代的OpenHarmony应用程序。


http://www.niftyadmin.cn/n/4977701.html

相关文章

python web GUI框架-NiceGUI 教程(一)

python web GUI框架-NiceGUI 教程(一) streamlit可以在一些简单的场景下仍然推荐使用,但是streamlit实在不灵活,受限于它的核心机制,NiceGUI是一个灵活的web框架,可以做web网站也可以打包成独立的exe。 基…

AxureRP制作静态站点发布互联网,内网穿透实现公网访问

AxureRP制作静态站点发布互联网,内网穿透实现公网访问 文章目录 AxureRP制作静态站点发布互联网,内网穿透实现公网访问前言1.在AxureRP中生成HTML文件2.配置IIS服务3.添加防火墙安全策略4.使用cpolar内网穿透实现公网访问4.1 登录cpolar web ui管理界面4…

【uniapp】 实现公共弹窗的封装以及调用

图例&#xff1a;红框区域为 “ 内容区域 ” 一、组件 <!-- 弹窗组件 --> <template> <view class"add_popup" v-if"person.isShowPopup"><view class"popup_cont" :style"{width:props.width&&props.width&…

研究生如何水论文

水出论文 抽象理解具体做法1、Baseline与模块2、怎么做3、怎么写 抽象理解 论文1ABC 论文2DEF 我的AECF&#xff08;调参&#xff09; 创新不是自己发现的&#xff0c;是找来的 具体做法 1、Baseline与模块 Baseline往往都来源于顶刊 论文ABERT 17 论文BESIMBERT&#xff0…

Java日期时间

日期时间 JDK8之前日期时间API java.lang.System类 System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。 此方法适于计算时间差。 计算世界时间的主要标准有&#xff1a; UTC(Coordinated Universal T…

2023年03月 C/C++(四级)真题解析#中国电子学会#全国青少年软件编程等级考试

第1题&#xff1a;最佳路径 如下所示的由正整数数字构成的三角形: 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 从三角形的顶部到底部有很多条不同的路径。对于每条路径&#xff0c;把路径上面的数加起来可以得到一个和&#xff0c;和最大的路径称为最佳路径。你的任务就是求出最佳路径上的…

详解过滤器Filter和拦截器Interceptor的区别和联系

目录 前言 区别 联系 前言 过滤器(Filter)和拦截器(Interceptor)都是用于在Web应用程序中处理请求和响应的组件&#xff0c;但它们在实现方式和功能上有一些区别。 区别 1. 实现方式&#xff1a; - 过滤器是基于Servlet规范的组件&#xff0c;通过实现javax.servlet.Filt…