鸿蒙系统、澎湃系统和安卓系统的区别一看就懂

2023-10-29 23:12

本文主要是介绍鸿蒙系统、澎湃系统和安卓系统的区别一看就懂,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

        最近看了小米澎湃OS的发布会,这是继华为鸿蒙OS脱离Android OS后,国内发布的另一个重量级的操作系统。

        依稀记得,当初鸿蒙OS问世的时候,很多人都质疑它是Android OS的套壳,对鸿蒙系统提出了诸多质疑和否定。

        现趁着澎湃系统的发布之际,此篇文章就好好阐述HarmonyOS、HyperOS和Android OS的区别。

专业术语

OS:operating system(操作系统);

GPL开源协议:完全无偿的、免费的开放所有源代码让所有开发者使用的协议;

微内核:是指将操作系统的各个组成部分拆分为多个较小的独立组件,每个组件仅执行少量关键任务,并通过消息传递方式相互通信。这种设计理念的优点是可以减少系统崩溃的风险,并使得内核易于移植到不同类型的硬件平台上,缺点是通信频繁会过多耗费计算机资源;

宏内核:是指将操作系统的所有组成部分都集中在一个单一的大型内核中,如linux就是一个宏内核,各个部分之间通过函数调用方式进行通信。这种设计理念的优点是可以提高系统的性能,因为它减少了消息传递所需的额外开销,缺点就是会增加系统崩溃的风险,不易移植。

鸿蒙OS

鸿蒙系统架构图

鸿蒙系统(HarmonyOS)是华为开发的一款全新的基于微内核的面向全场景的分布式操作系统,旨在为各种智能设备提供统一的操作系统平台。

鸿蒙系统的设计理念是以微内核为基础,通过分布式软总线技术实现多设备之间的无缝连接,从而实现全场景智能化。

从上图鸿蒙系统架构图可以看出,鸿蒙系统采用了一种分层架构,以实现系统的模块化、可复用和可扩展性。

  • 应用层:包括系统应用和第三方非系统应用,即我们经常使用的app应用电话、设置、微信等。

  • 框架层(Application Framework Layer):提供了各种应用程序的开发框架(提供了C/C++/JS等多语言的框架API)和运行环境。它包括图形用户界面(GUI)库、多媒体库、网络通信库、存储管理库等,为应用程序提供了统一的调用接口,实现了应用程序之间的隔离与协同。为应用程序app的开发和运行提供支持。

  • 系统服务层(System Service Layer):这一层提供了系统级的服务功能,包括设备管理、权限管理、文件系统、进程管理等。它是整个系统的核心部分,通过框架层对应用程序提供服务。例如AI子系统可以提供AI方面的服务。

  • 内核层(Kernel Layer):负责系统的基本功能和硬件驱动,采用多内核设计,针对不同资源受限设备选用适合的OS内核,包括Linux内核和LiteOS等;内核抽象层通过屏蔽多内核差异,对上层提供统一的基础内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等,这种设计使得鸿蒙系统可以更加稳定、安全和高效地运行。

通过这种分层架构,鸿蒙系统实现了各个层级的解耦和模块化,使得各个层级可以独立发展、灵活定制和扩展。这种架构提高了系统的可维护性、可移植性和可扩展性,并提供了更好的用户体验和性能表现。

澎湃OS

澎湃系统架构图

从上图小米公布的澎湃OS完整架构图可以看出,澎湃系统的构架为:

  • 应用层:位于系统架构的最顶层,包括各种应用程序和用户界面。

  • 跨端层负责实现设备之间的互联互通,包括分布式子系统、跨端服务框架子系统、跨端公共能力子系统、跨端应用框架子系统和跨端安全子系统。

  • 服务与框架层:包括安卓的服务框架和小米自研的Vela系统的服务框架,作为中间件提供支持。

  • 内核层:在最底层的系统内核层,小米将自研的Vela系统内核与深度修改的Linux系统内核进行融合。重构了性能调度、任务管理、内存管理、文件管理等基础模块,以提升性能和效率。

  • 硬件层:位于系统架构的最底层,负责与硬件设备进行交互。

小米澎湃系统基于Android,采用了传统的宏内核设计,融合了Linux和小米自研的Vela系统,对安卓进行深度定制通过重构底层技术。

这一全新的融合内核支持多种处理器平台和文件系统,具有很好的兼容性。在服务与框架层,小米将安卓的服务框架和自研Vela系统的服务框架作为中间件纳入其中。此外,小米澎湃系统还引入了全新的跨端互联框架,使得不同设备之间能够更好地协作。

鸿蒙、澎湃以及安卓系统区别

上图是一张各个系统间的关系图,从图中我们不难看出,鸿蒙OS、谷歌安卓和澎湃OS都是基于AOSP衍生出来的产物。

接下来从始末进行详细说明:

UNIX是一个操作系统,它在1969年诞生的,Linux是Unix经过简化和开源发展而来的一个版本,而苹果的iOS和macOS系统也是基于Unix开发而来的,这意味着,尽管这些操作系统在用户界面、应用生态和外观上有所不同,但它们的底层都与Unix有关。

Android,是安卓之父安德鲁·E·鲁宾开发的,后来被谷歌注资收购,发展为现在的谷歌安卓。

Android的底层核心就是基于Linux内核构建的,然后针对移动设备的应用需求,Android对Linux内核进行了一定的修改和优化,因为基于linux开发的衍生品都是要遵守GPL开源协议开放源代码的,所以安卓需要开放源码,这就是AOSP(Android open source project)。

就算Android被谷歌收购了,但从某些角度来讲,Android并不完全属于谷歌,因为它要遵守GPL开源协议,那它就是由全球的开发者共同去开发维护的一个产物。

谷歌并没有完全遵守GPL的开源协议,而是转而采用了商业意味更浓、更灵活的Apache 2.0的开源协议,这个协议允许后来的修改者发布闭源项目,不用开放源代码,利于国内的小米MIUI等都是闭源的,后面谷歌为了自己能够盈利且对生态进行控制,就在安卓系统之上又搞了一套闭源的GMS,也就是谷歌移动服务,在国外安卓手机上,没有GMS就等于没法用谷歌地图,YouTube等软件都无法正常使用,有海外业务就必须要用GMS框架。

鸿蒙系统和澎湃系统都是AOSP的衍生物,属于独立个体,谷歌无权干涉。

言尽于此,如果你硬要说鸿蒙和澎湃系统是安卓套壳也并无道理,毕竟它是基于AOSP,但别对国产系统有过多的贬低,它就像一只正在崛起的雄狮。

三者区别

鸿蒙系统

是华为自主开发的一款全新的基于微内核的面向全场景的分布式操作系统。它注重实现全场景流畅体验、架构级可信安全和跨终端无缝协同。鸿蒙系统采用了微内核架构,具备灵活性和扩展性,并且可以运行安卓应用程序。

澎湃系统

是小米基于安卓系统进行定制开发的操作系统。它注重提供更好的性能和用户体验,它采用了传统的宏内核设计。全新打造了 8 大子系统,其中全新的 AI 子系统融合大模型能力,成为整个系统的“智能大脑”,赋予了整个生态AI能力。

谷歌安卓系统

是由谷歌开发的一款广泛应用于智能手机和其他移动设备的操作系统。安卓系统是基于Linux内核的开源操作系统,具有庞大的应用生态系统和广泛的设备支持。

鸿蒙系统和澎湃系统都是国内手机厂商自主开发的操作系统,与谷歌安卓系统存在一定的竞争关系。鸿蒙系统和澎湃系统都具备一定的兼容性,可以运行安卓应用程序,但它们的架构和设计理念与安卓系统有所不同。

总结

从鸿蒙OS和澎湃OS都是支持安卓应用不难看出,如果需要重新搭建一个生态是需要经历很长时间的沉淀的,对于一个全新的生态,需要全新的应用去适配,如果鸿蒙和澎湃完全脱离Android,那么它们就无法去适配现有的安卓应用,需要全部重新开发。

看了小米澎湃系统的发布会,有很多感慨,澎湃系统目前只会在小部分机型适配,评测后届时网络上也将会有很多吐槽,各种嘲讽,所以多点理性支持,毕竟所有事物的完善都是需要一个过程的,不是一蹴而就的。

可以断定的是AI功能以后将会更多的应用到手机当中,未来将是万物互联的时代。

这篇关于鸿蒙系统、澎湃系统和安卓系统的区别一看就懂的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/304015

相关文章

go 指针接收者和值接收者的区别小结

《go指针接收者和值接收者的区别小结》在Go语言中,值接收者和指针接收者是方法定义中的两种接收者类型,本文主要介绍了go指针接收者和值接收者的区别小结,文中通过示例代码介绍的非常详细,需要的朋友们下... 目录go 指针接收者和值接收者的区别易错点辨析go 指针接收者和值接收者的区别指针接收者和值接收者的

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

鸿蒙中@State的原理使用详解(HarmonyOS 5)

《鸿蒙中@State的原理使用详解(HarmonyOS5)》@State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式,本文给大家介绍... 目录一、@State在鸿蒙中是做什么的?二、@Spythontate的基本原理1. 依赖关系的收集2.

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

CSS Padding 和 Margin 区别全解析

《CSSPadding和Margin区别全解析》CSS中的padding和margin是两个非常基础且重要的属性,它们用于控制元素周围的空白区域,本文将详细介绍padding和... 目录css Padding 和 Margin 全解析1. Padding: 内边距2. Margin: 外边距3. Padd

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Springboot @Autowired和@Resource的区别解析

《Springboot@Autowired和@Resource的区别解析》@Resource是JDK提供的注解,只是Spring在实现上提供了这个注解的功能支持,本文给大家介绍Springboot@... 目录【一】定义【1】@Autowired【2】@Resource【二】区别【1】包含的属性不同【2】@

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1