1:手机开放联盟:
- 开放手机联盟,是谷歌牵头,拉拢手机设备商,芯片商,运营商,通信设备商等一大波公司搞的,目的是为了一起联合起来在移动设备领域一起挣钱,最开始是为了对抗如日中天的苹果,谷歌公司(Google)于2007年宣布34家终端和运营企业加入开放手机联盟(Open Handset Alliance),将共同开发名为安卓(Android)的开放源代码的移动系统。Google、中国移动、T-Mobile、三星、高通、德州仪器等将通过开放手机联盟携手开发Android。开放手机联盟旨在开发多种技术,大幅削减移动设备和服务的开发和推广成本。
- 安卓系统属于 AOSP,即“安卓开源项目”,安卓操作系统就是这个项目的成果。
- AOSP是由谷歌牵头,由谷歌和开放手机联盟一起主导研发的。
- AOSP是一个开源的项目,主要采用的是 Apache 开源协议,这个协议很宽松,对使用者要求比较少。
- AOSP是属于谷歌的,最早期的安卓是其他公司开发的,已经被谷歌全资收购了
- 已经开放出来的安卓AOSP版本,是无法再修改为闭源,但是下一个新版本是可以的
- 使用AOSP项目的厂商,可以修改再发布,但是改变不了AOSP的原有者的著作权和版权,再发布要带上之前的协议,并且指出修改的地方
- 手机厂商一般不会直接从AOSP拉代码,他们一般都是和芯片商合作。比如高通、MTK等,每一个芯片商都有一个自己的AOSP分支版本,这个版本已经适配了自家的芯片,手机商一般从他们那里获得代码
- Android是属于谷歌的商标,其他厂商不能直接使用,也就是说其他厂商只能说自己是 Powered by Android.而只有谷歌自家的手机才可以说是Android.
- GMS是 Google Mobile Service的简称,包含了一大堆谷歌的app自己最关键的Google Play Service,GMS不属于AOSP,也不开源,需要使用必须获得谷歌的授权
- 兼容性测试是谷歌给合作的厂商提供的一个服务,通过了这一项测试的话,能保证手机是符合规格的,而且对于要获得GMS授权的厂商,这个兼容性测试是必须要通过的。
2:AOSP:
1) Google可以不让中国的手机厂商使用AOSP吗?
AOSP(Android Open Source Project)是Android操作系统的开源项目,遵循Apache License 2.0协议。Apache License 2.0协议是一种宽松、对商业友好的开源许可证,允许开发者使用源代码、修改源代码,并将其用于商业项目。
尽管Google是AOSP的主要贡献者,但AOSP并不属于Google,而是由开源社区维护和管理。因此,Google无法禁止中国的手机厂商使用AOSP。
2) Google可以通过控制Android系统的其他部分,例如GMS(Google Mobile Services),来限制中国手机厂商在海外市场的发展。GMS是Google的一系列应用和服务,包括Google Play、Gmail、Google Maps等,这些应用和服务在Android系统中发挥了重要作用。如果Google禁止中国手机厂商使用GMS,可能会对中国手机厂商在海外市场的竞争力产生影响
3).基于AOSP的源码开发独立的Android系统AOSP是开源的,任何人都可以修改AOSP的代码开发独立于AOSP的Android系统。因为AOSP采用Apache 2.0授权,所以修改AOSP后的代码不需要开源。Amazon的Kindle Fire和众多国产手机厂商的系统都属于这一类。AOSP的所有源代码是可见的,而GMS和基于AOSP的独立Android系统源码是不可见的。
4)ACC协议:
ACC 协议指的是安卓兼容性承诺(Android Compatibility Commitment),ACC 协议限制了手机设备制造商可以自定义安卓的程度。具体而言,不允许原始设备制造商以自己的品牌(单独或与安卓第三方开发者的品牌一起)生产不兼容的安卓设备。谷歌这种通过 ACC 协议限制竞争的行为,难言合理,且因违反欧盟反垄断法已被欧洲废止
平时谷歌发布的安卓版本通常包含两部分:Android Open Source Project (AOSP) 和额外的谷歌服务和应用。比如Google Play商店、Google Maps、Google Play服务等。这些组件不是开源的,只有通过与谷歌签订特定的合同后,设备制造商才能在他们的设备上预装这些应用和服务。这样的安卓版本提供了与谷歌生态系统更深层次的整合,包括应用更新、设备安全管理和用户服务等。
2:鸿蒙为什么能安装安卓的APK:鸿蒙双系统:
其实华为鸿蒙用的是双系统框架,一个基于开源的AOSP,另外一个基于自研的OpenHarmony。
3:微内核:
鸿蒙系统和安卓系统都是建立在Linux操作系统内核之上的手机应用程序的通用运行环境。
鸿蒙系统一种基于Linux微内核架构的分布式操作系统
鸿蒙系统和安卓系统都有借鉴和基于Linux内核开发的历史,但它们在架构和设计上有所不同。鸿蒙系统通过微内核架构和分布式能力的强化,以及跨设备的统一操作体验,试图解决多设备之间的无缝连接和共享问题。
安卓系统的分层架构:
微内核架构
微内核架构(Microkernel Architecture)是一种操作系统设计的范式,在这种架构中,操作系统的核心功能被精简成一个最小化的内核,只提供了最基本的功能和服务,如进程管理、内存管理和线程调度等。而其他的功能和服务则通过与内核分离的独立进程或服务的形式运行。
微内核架构的设计思想是通过将核心功能放在内核中,并将其他功能作为服务运行,来实现操作系统的灵活性、可靠性以及可扩展性。以下是微内核架构的一些特点:
精简内核:微内核中只包含最基本的功能和服务,将其他的功能放在独立的服务或进程中运行。这样可以减小内核的复杂性和规模,提高内核的稳定性和安全性。
通信机制:微内核架构通过进程间的消息传递或远程过程调用(RPC)等通信机制来实现内核和服务之间的交互。这种设计可以保持核心内核的纯净性,同时提供了较高的灵活性和可扩展性。
动态可配置:微内核架构允许根据需求动态地加载或卸载服务,以适应不同系统配置和应用需求。这种动态可配置的特性使得系统更加灵活和可定制。
可靠性和安全性:由于微内核架构将核心功能精简到内核中,并将其他服务隔离运行,减小了内核的攻击面和故障引起的影响。这提高了系统的可靠性和安全性。
微内核架构的一个主要优势是系统的模块化,这使得系统更容易进行扩展和维护。然而,由于微内核架构需要频繁的进程间通信,可能导致性能上的一些开销。因此,在实际应用中,微内核架构需要权衡可靠性、灵活性和性能等因素。
- 微内核架构: 对于新产品,采用微内核架构的系统,通常内核本身相对简单,主要功能模块化,可以根据产品需求进行配置和定制。开发者可以选择性地加载和配置不同的服务和功能模块,使得系统更符合特定产品的需求,避免不必要的复杂性和资源消耗。
- 宏内核架构(如安卓): 安卓系统作为宏内核架构的例子,内核本身集成了大量的驱动程序、系统服务和功能模块,以支持广泛的设备和应用场景。对于新产品来说,面临的是一个相对庞大和复杂的内核,需要进行精细的裁剪和定制,以便适配新产品的特定需求和硬件配置。
4:分布式
说白了就是,鸿蒙 OS 一个操作系统能够给所有设备使用。
例如同样是苹果生态的设备,手机用 iOS ,电脑用 MacOS ,平板用 iPad OS ,手表用 Watch OS 。
而华为的分布式系统思路,则打算让所有的设备都用同一个操作系统,同时再用 「 分布式软总线技术 」,让他们真正意义上 “ 互联 ” ,从数据到服务。
你正在汽车上语音通话,熄火后把通话转移到手机上一边往家里走,走到家门口时把通话转接到你的智能手表上继续,空出手来翻包找钥匙进门,进门以后,打开电视机和摄像头,往沙发上一趟,就开始用电视继续视频通话。
分布式操作系统=分布式输入+分布式输出+分布式计算+分布式存储鸿蒙试图将各种设备的这四种能力(或更多的能力)做为分布的资源,在某一个设备上,可以随时方便地调用其它设备上的这些资源,就如同它自己拥有这些资源一样。
举例来讲:
PC可以随时把手机接入进来做为输入设备比如正用电脑呢,老板要你去开会,你一边去会议室,一边用手机把刚才在电脑上没做完的事做完。
手机可以随时把PC接入进来做为存储设备现在谁要通过微信发个文件给我,我要先用手机接收,再用各种办法转到电脑上,如果手机能直接将PC做为存储设备,接收到的文件直接就象存在手机本地一样,指定存放位置就可以完成这样的操作,省去了中间传递文件的过程
华为发布会上演示的无人机和手机之间互动,实际上就是把无人机的摄像头做为手机的输入设备,手机的屏幕成为无人机的输出设备
所以,分布式操作系统并不象我们平时熟悉的操作系统,它想管理的不止是本机物理连接的输入输出设备、存储器和CPU,而是同一用户账号下所有设备的输入输出设备、存储器和CPU,
所以才称它为跨设备、跨终端、分布式的操作系统。
鸿蒙的分布式系统思路可以实现将某个具有较强计算能力的设备的资源共享到其他设备上。这种资源共享可以通过分布式系统中的各种技术实现,比如分布式计算、分布式存储等。
举个例子,假设你有一台高性能的服务器设备,它运行着鸿蒙系统,并且连接到了你的家庭网络中。其他智能设备,比如智能手机、智能电视等,也运行着鸿蒙系统,并且连接到同一个网络中。
通过鸿蒙的分布式系统,你可以将服务器上的某些计算任务分发到其他设备上进行处理,从而实现资源共享和负载均衡。比如,当你在智能电视上播放高清视频时,可以利用服务器的计算能力进行视频解码和处理,然后将处理结果传输到智能电视上显示,这样就可以节省电视的资源并提高整体系统的性能。
通过这种方式,鸿蒙的分布式系统可以实现设备之间的资源共享和协同工作,提高系统的整体性能和效率,为用户提供更加流畅、智能的体验。
总结:
现在安卓的方案是应用之间的链接,而鸿蒙方案是底层系统之间的连接
5:不需要虚拟机
方舟编译器直接编译成机器码,不需要虚拟机
6:语言:ArkeTs
目前最大的前端框架之一的Angular正在使用TypeScript
TypeScript是JavaScript的超集,具有可选的类型并可以编译为纯JavaScript。从技术上讲TypeScript就是具有静态类型的 JavaScript 。
7:方舟编译器
内存管理是程序开发与运行时需要重点考虑的部分,也和系统流畅度息息相关。安卓在内存回收上采用集中回收机制,发生全局回收时更
需要暂停应用,这也是随机卡顿的根因之一。而方舟编译器提供了更高效的内存回收机制,回收时无需暂停应用,随时用随时回收,大大提高运行速度。
标签:简洁,鸿蒙,安卓,系统,AOSP,Google,微内核,设备 From: https://www.cnblogs.com/wnpp/p/18309210