终于把鸿蒙说明白了,关于安卓系统、AOSP(安卓开源项目)和鸿蒙系统比较

article/2025/9/18 10:16:49

把鸿蒙说得很明白了,小白们不要给小米、蓝绿厂泼污水文忽悠了,以为鸿蒙就和当年的龙芯一样把鸿蒙说得很明白了,小白们不要给小米、蓝绿厂泼污水文忽悠了,以为鸿蒙就和当年的汉芯一样买芯片换掉商标就行!

关于安卓系统、AOSP(安卓开源项目)和鸿蒙系统

1 AOSP是安卓开源项目,是一个由Google收购并开源的手机操作系统项目(主要协议是Apache 2.0),基于Linux内核核心代码,截至目前大量安卓阵型的手机厂商以及上下游供应商参与了安卓项目的开发,主要包括华为、索尼、三星、Intel、高通等,其中华为是安卓项目代码贡献全球前三名的厂商。
2 AOSP是手机操作系统的核心代码,但不是全部。手机操作系统需要在AOSP基础上,增加各种硬件驱动、软件框架层、以及各类系统应用,才能成为我们通常所说的手机操作系统。所以,AOSP通常是指安卓手机操作系统的“内核”。在安卓手机的系统描述中,通常有一个“内核版本”,即为AOSP。
3 安卓系统通常即为AOSP,安卓手机描述的Powered by Android,这里的Android即是AOSP。由谷歌定期牵头发布的安卓大版本也是指AOSP。AOSP是免费提供给所有手机厂商使用的。
4 目前安卓阵营各厂商(除了华为)并不只是使用了免费的AOSP,还使用了谷歌发布的收费的GMS(谷歌服务框架)以及谷歌的各类APP(等等)。虽然国内手机可以不使用谷歌app,但是由于早期GMS属于AOSP,因此大量的安卓App依赖了GMS的许多功能接口,随着后期谷歌把大批GMS代码从AOSP项目移出转为收费GMS(这段历史也是促使华为启动自研鸿蒙的重要原因之一),所以谷歌几乎控制了整个安卓生态。这也是为什么安卓标榜是免费开源项目而所有厂商都离不开谷歌的核心原因。


5 所以,一般意义上的“安卓”是指:AOSP + GMS,这两者构成了安卓开发者使用的基础SDK,也是几乎所有安卓App的基础。其中,AOSP开源免费,GMS商用收费。
6 鸿蒙(HarmonyOS)是由华为开发的开源手机操作系统项目,对标的是AOSP,同样基于Linux内核核心库,并使用了AOSP部分开源代码用于安卓app兼容(符合Apache开源协议)。由于鸿蒙并没有直接使用AOSP软件,因此这是一个独立开源项目,最直接而言不需要Powered by Android。类比Linux也使用了Minix的部分代码,AOSP也使用了Linux部分代码,但他们都是一个新的独立项目一个道理。
7 华为手机操作系统包括HarmonyOS+HMS,后者是对标谷歌GMS的商业产品,用于支持开发者为华为手机开发App。由于HMS是后来者,因此HMS许多接口设计也是尽量兼容GMS,跟鸿蒙兼容AOSP一个道理。
8 如果鸿蒙只是Fork AOSP,拉个分支的话,在开源圈子里就没有前途了。鸿蒙目前主打的是整体架构上与AOSP不同(是微内核架构,AOSP是宏内核),以及集成了分布式计算框架(用于手机与其他设备的互联,典型如手表、车、家电、耳机等),这也是鸿蒙1+8+N大生态的技术基础。而谷歌也在研发一个类似的终端操作系统(内部被称为安卓第二)Fushia。
9 由于手机应用生态很大程度依赖GMS,为了海外市场,所以小米、OPPO、Vivo、一加等厂不大可能全部使用HMS,很大一部分可能,中低端使用鸿蒙系统,高端继续使用安卓,差异化竞争。当然,如果鸿蒙用户反馈很好的话,不排除高端机也使用鸿蒙的可能性。毕竟鸿蒙的目标主要是在“万物互联”的智慧生活。所以,家电、车、可穿戴设备、运动健康等方面才是鸿蒙系统的目标。鸿蒙不只是个手机操作系统,而是个“大终端”操作系统。是未来的大趋势。

https://xpanx.com/

HarmonyOS

  • HarmonyOS
  • 安卓系统
  • AOSP
  • 安卓开源项目
  • 鸿蒙系统
  • HMS
  • GMS
  • HarmonyOS+HMS
  • Powered by Android
  • Powered by HarmonyOS
  • AOSP + GMS

 

 

  • 转载请务必保留本文链接:https://xpanx.com/662.html

http://chatgpt.dhexx.cn/article/lhfcwsv6.shtml

相关文章

python爬取弹幕读取csv文件制作弹幕热点词云图-万恶之源马老师-后裔弃兵

文章目录 1.后裔弃兵2.万恶之源弹幕 python3.8 jupyter notebook1.后裔弃兵 《后翼弃兵》豆瓣短评数据集 import pandas import csv import jieba import numpy from PIL import Image from wordcloud import WordClouddef getDataFromCsv():# 设置星级等级,根据等…

Fuchsia X86 kernel启动代码分析

Google整Fuchsia代码整了好些年了,近期是有看到说Fuchsia可能会正式商用了,所以抽了空把Fuchsia代码下了下来,想从kernel起好好捋一捋代码,想从根本上理解其kernel部分的实现。 理解任何的系统,都是得从启动开始&…

Fuchsia 的 Rust 代码占比超 50%

谷歌近日正式面向公众推出了 Fuchsia OS,获得 Fuchsia 1.0 推送的设备是第一代 Nest Hub。 与基于 Linux 内核的 Chrome OS 和 Android 等操作系统不同,Fuchsia 使用了全新的、自研的 Zircon 微内核,其采用 C 编写。内核的组件则使用…

数论基础(1)扩展欧几里得定理

一、引言 扩欧在朴素欧几里得定理中扩展得到,主要用于解决什么问题? 1.求两个数的最大公约数(朴素欧也可以解决这个问题) 2.axbygcd(a,b),求解这个线性不定方程的一组特解。 (补充:贝祖定理:裴…

欧几里得定理及扩展

我们都知道欧几里得算法是用来快速求两个数的最大公约数的算法,效率较高:2O(logn)。 我们先给出算法的实现: 1 int gcd_1(int a, int b)2 {3 if(b0) return a;4 return gcd_1(b, a%b);5 }6 7 int gcd_2(int a, int b)8 {9 while(…

欧几里得算法和唯一分解定理

gcd算法 我们通常利用gcd算法来计算两个数的最大公约数。 gcd求法有很多种,通常我们利用辗转相除法,辗转相除法又称欧几里得算法。其计算原理依赖于下面的定理: 定理:两个整数的最大公约数等于其中较小的那个数和两数相除余数的…

欧几里得定理、扩展欧几里德定义及中国剩余定理(数列和一些数学方面的概念)

一、 欧几里得扩展:是欧几里得算法的扩展,已知整数a,b,扩展欧几里得算法可以 在求得a,b的最大公约数的同时,能找到整数x、y(其中一个可能为负数),使得他们满足贝祖等式 …

《欧几里德算法》原理及应用

欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。其计算原理依赖于下面的定理: 定理:gcd(a,b) gcd(b,a mod b) 解释:a和b的最大公约数,等于b和a除以b余数的最大公约数 证明:a…

数学--数论--欧几里得定理和拓展欧几里得定理

欧几里得定理: gcd(a, b) gcd(b, a%b) 证明: 我们首先约定:m gcd(a,b) , n gcd(b, q) , a b*p q。(这里的gcd含义跟上面一样,q的含义跟后面式子同) 1. m 是a,b的最大公约数,那么m整除a,b q a…

欧几里得定理与扩展欧几里得

3,欧几里德定理:(射影定理) 定理指出素数是无限的。 a*b*c1要么是素数要么其质因子就是素数。 扩展欧几里得: 扩展欧几里得算法是欧几里得(又叫辗转相除法)的扩展。已知整数a、b,扩展欧几里得算法可以在…

SpringData Jpa、Hibernate、Jpa 三者之间的关系

JPA规范与ORM框架之间的关系是怎样的呢? JPA规范本质上就是一种ORM规范,注意不是ORM框架——因为JPA并未提供ORM实现,它只是制订了一些规范,提供了一些编程的API接口,但具体实现则由服务厂商来提供实现,JBo…

JPA(一):十分钟入门 JPA

一.JPA的概念 为了节省时间&#xff0c;更加具体的解释我们就略过吧。 二.在IDEA中使用JPA 2.1.添加JAP依赖 添加相关的maven依赖 <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.7<…

【Tools】管理JPA数据模型的最先进的IntelliJ插件:JPA Buddy

目录 说明基础操作JPA BuddyEasyCode 说明 使用IDEA版本为 2022.2.1。由于IDEA版本或插件版本的不同&#xff0c;操作界面可能略有不同。了解了JPA Buddy和EasyCode&#xff0c;个人更倾向于JPA Buddy&#xff0c;功能更强大&#xff0c;操作简单。 JPA Buddy通过以下方式简化了…

JPA和Spring-Data-JPA简介

什么是JPA JPA(Java Persistence API)是Sun官方提出的Java持久化规范。它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据。它的出现主要是为了简化现有的持久化开发工作和整合ORM技术 ORM&#xff1a;通过使用描述对象和数据库之间映射的元数据&#x…

SpringBoot 一文搞懂Spring JPA

一文搞懂Spring JPA 什么是 JPA spirng data jpa是spring提供的一套简化JPA开发的框架&#xff0c;按照约定好的【方法命名规则】写dao层接口&#xff0c;就可以在不写接口实现的情况下&#xff0c;实现对数据库的访问和操作。同时提供了很多除了CRUD之外的功能&#xff0c;如…

JPA基础知识----JPA 基本注解,JPA API

JPA 是什么 Java Persistence API&#xff1a;用于对象持久化的 API Java EE 5.0 平台标准的 ORM 规范&#xff0c;使得应用程序以统一的方式访问持久层 JPA和Hibernate的关系 JPA 是 hibernate 的一个抽象&#xff08;就像JDBC和JDBC驱动的关系&#xff09;&…

java jpa是什么_什么是JPA?

JDBC jdbc是一组规范&#xff0c;是接口&#xff0c;由不同的数据库厂商各自提供相应的实现类&#xff0c;打包成jar包&#xff0c;也就是所谓的数据库驱动。而我们的java应用程序&#xff0c;只需要调用jdbc的接口就可以了。 而JPA是和jdbc类似的东西 什么是JPA Java Persiste…

JPA与Mybatis的区别

其实JPA和mybatis大体上没什么区别&#xff0c;架构上很相似&#xff0c;mybatis就是mapper层&#xff0c;JPA就是repository层&#xff0c;其他都一样的 JPA就是把mapper层的接口换成repository的接口: 那么接口具体长什么样呢&#xff1f; mapper层 自己写sql语句 JPA的re…

什么是JPA?Java持续性介绍

新钛云服已累计为您分享723篇技术干货 本文将了解基于 Hibernate 的 Java 持久化标准&#xff0c;学习如何使用 JPA 在关系数据库或 NoSQL 数据库中存储和管理 Java 对象。 作为一种规范&#xff0c;Jakarta Persistence API&#xff08;以前称为 Java Persistence API&#xf…

spring boot 中使用 jpa以及jpa介绍

最近在项目中使用了一下jpa&#xff0c;发现还是挺好用的。这里就来讲一下jpa以及在spring boot中的使用。 在这里我们先来了解一下jpa。 1.什么是jpa呢&#xff1f; JPA顾名思义就是Java Persistence API的意思&#xff0c;是JDK 5.0注解或XML描述对象&#xff0d;关系表的…