睛中—HarmonyOS的全方位了解 原创

Der_带鱼
发布于 2021-7-11 00:18
浏览
1收藏

睛中—HarmonyOS的全方位了解|自学笔记

一、华为开发者学堂

(一)什么是HarmonyOS

什么是HarmonyOS

时间:2021年7月10日21:36:02

  1. 面向未来的全场景分布式智慧操作系统
  2. 覆盖1+8+N设备
  3. 应用开发、硬件开发

(二)HarmonyOS概述-02 HarmonyOS系统架构

HarmonyOS概述-02 HarmonyOS系统架构

时间:2021年7月10日21:40:43

  1. 分层架构,四层(从下到上):内核层-服务层-框架层-应用层
  2. 系统功能按照 系统>子系统>功能/模块 展开
  3. HarmonyOS系统架构图

睛中—HarmonyOS的全方位了解-鸿蒙开发者社区

  • 观察到内核层使用的是Linux Kemel、LiteOS
  1. 在内核层,内核子系统采用多内核设计.

  2. 在内核层,驱动子系统:硬件驱动框架(HDF),是硬件生态开放的基础,提供外设访问能力和驱动开发管理框架

  3. 系统服务层:核心能力集合,包含系统基本能力子系统集,基础软件服务子系统集,增强软件服务子系统集,硬件服务子系统集

  4. 框架层:用户程序框架、UI框架(JAVA UI、JS UI)、Ability框架、多语言框架API

  5. 应用层:构建以FA/PA为基础组成单元的应用

  • 较为浅显的理解,PA就是功能的实现,FA就是界面的实现
  • 分布式,原子化

二、HarmonyOS技术社区

(一)不吹不擂,一文揭秘鸿蒙操作系统

  1. JAVA>JS>c++
  2. 纠偏!!!
  • 【非嵌入式领域】鸿蒙指的是 鸿蒙的手机操作系统,
    • 当前鸿蒙是双架构,用的是==AOSP==,但因为内核层是多内核的,运行在ART虚拟机中,但是上层已经封装了鸿蒙的接口,在后续的鸿蒙版本中可以逐步解耦AOSP,直至单框架完全不依赖AOSp,AOSP是10.0的。换句话说不是套壳、是并行。如果是apk,就交给android,如果是hap,就交给鸿蒙。
    • 鸿蒙Android从设计上更类似QT跟Windows的关系
  • 【嵌入式领域】鸿蒙指是一款嵌入式操作系统,鸿蒙的核心为==LiteOS==,系统只能在配套的硬件(开发板)上运行,并非通用的操作系统,==OpenHarmony==是其对外开源的版本,在2020年9月在gitee上开源OpenHarmony 1.0,关于这款系统华为自身的文档比较欠缺,这里有较为详细的开发者文档
    • 关于LiteOS,51社区里==weharmony==持续更新对鸿蒙内核源码分析!大家去插个眼!
    • 再就是鸿蒙的开源,是==按揭式的开源==,可能像G公司一样对于云服务等关键核心功能不会开源。但自主研发的决心是有的!宣传和营销不应该过分解读!
  1. 鸿蒙核心:多设备兼容、卡片式应用、软总线、通信安全
  • 多设备兼容

就是内核层其多内核的体现,屏蔽底层OS的差异

  • 卡片式应用
  • 近日社区里张荣超老师对 鸿蒙卡片开发超细致总结

  • 卡片是应用内页面的展现形式,将页面的重要信息或者操作前置到卡片上,以达到服务直达、减少体验层级的目的。

睛中—HarmonyOS的全方位了解-鸿蒙开发者社区

睛中—HarmonyOS的全方位了解-鸿蒙开发者社区

  • 软总线

自动发现、异构组网、统一极简协议

睛中—HarmonyOS的全方位了解-鸿蒙开发者社区

睛中—HarmonyOS的全方位了解-鸿蒙开发者社区

  • 通信安全

三个正确、正确的设备(可信执行环境TEE)、正确的人(分布式认证)、正确使用数据(数据分类、设备分级)

  1. 微内核

有些没有开源,其他不得而知。

  1. 应用框架

鸿蒙应用UI框架有两套,支持Java、JS

Java框架只支持鸿蒙Android系统,JS应用既支持鸿蒙Android系统

  1. java应用

java应用在开发时依赖以下SDK包,只能用来编译代码,SDK反编译看不到源码,也未开源。

睛中—HarmonyOS的全方位了解-鸿蒙开发者社区

  1. 鸿蒙是跟Android深度绑定的

鸿蒙Android版要脱离Android体系难度还比较高,毕竟核心的UI部分非自绘。

睛中—HarmonyOS的全方位了解-鸿蒙开发者社区

  1. JS应用
  • js开发的应用是一种类似小程序的开发方式,html,js,css首先会编译成jsbundle(编译工具本身未开源),jsbundle的执行不同的鸿蒙系统上有所区别。有点微信小程序那个味儿了
  • 实际在Android工程上,鸿蒙走的并不是自绘的方案,而是类似==ReactNative==的控件转换,ReactNative采用的是React的语法,而鸿蒙Android采用的是==Vue==的语法,从国内的开发者生态上来看,这是个正确的选择。

  • 鸿蒙的这个用C++实现类VUE语法,在嵌入式上自绘,Android上控件转换的Js跨平台渲染框架属于原创,可惜的是鸿蒙Android这块并未开源,不能深入研究。

  1. 总结
  • 鸿蒙OS(及==大华为体系==)所有的生态布局也将围绕万物互联展开。鸿蒙OS在完成细分场景的拓展与跑马圈地后,鸿蒙OS将完善华为==AIoT生态==,进一步在智慧城市、车联网(深化)、工业互联网三方面发力推进。中长期来看,鸿蒙OS与华为“云+端”芯片形成强大合力,进军产业物联网
    • AloT的英文全称是“Artificial Intelligence & Internet of Things”,广义上是指人工智能技术与物联网在实际应用中的落地融合,但伴随着5G浪潮的到来,“AloT”的内涵也愈加丰富。AIoT不是简单的AI+IoT,而是应用人工智能、物联网等技术,以大数据、云计算为基础支撑,以半导体为算法载体,以网络安全技术作为实施保障,以5G为催化剂,对数据、知识和智能进行集成。
  • 当前鸿蒙OS的发力抓手仍是以移动端为核心的==HMS产业链==。
    • HMS,Huawei Mobile Services,即华为移动服务,是GMS的替代解决方案

三、知乎

(一)王成录在记者访谈中提及的鸿蒙国内软件生态相关内容

  1. 智能手机市场即将饱和,所以要做生态
  2. 2020年9月,发布了鸿蒙2.0,并初步开源,并在同年12月推出了手机开发者Beta版本、面对套壳质疑,感觉急了,急了。
  • 鸿蒙对安卓的依赖目前来说还是难以摆脱的,具体看上之前的分析
  1. 美的可能与鸿蒙深度合作
  2. app服务承载方式差不多到达了天花板了,现行app的做法十分大一统
  • 所以我觉得这里对应的框架层和系统服务层都有很明显的体现。你当前的设备需要什么FA就下载什么FA,需要什么PA就下载什么PA。搭积木方式的应用。
  1. 人才招募90%以上应届生。!!!!!
  2. 社招少的部分原因是中国软件人员大部分都去做应用层了。系统人才比较少。
  3. 短视频、游戏鸿蒙生态绝不做,点名了抖音哈哈哈!
  • 某种角度来说我还蛮认可的

(二)鸿蒙与太极

  1. 华为是安卓源码的不是主要提供者,主要提供者是谷歌。
  2. 华为确实在做自主研发,但某些方面的确不如别人
  3. 鸿蒙远程真机进行HAP和APK测试来看,鸿蒙系统本身是在安卓AOSP基础上做了一个封装层,并与AOSP隔离。
  • 关于这些话题,我想表达的观点是实事求是,根据上述了解,51社区的鸿蒙一文了解,我觉得说得很好!不是套壳,但是存在严重依赖,未来可期!

注:本文都是自己学习以后的笔记和总结!侵删!

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2021-7-11 12:35:15修改
4
收藏 1
回复
举报
2条回复
按时间正序
/
按时间倒序
Whyalone
Whyalone

作者对HarmonyOS的了解很全面也很客观中肯

回复
2021-7-11 19:27:08
爱吃土豆丝的打工人
爱吃土豆丝的打工人

做为国人开发者,还是对HarmonyOS充满了无限憧憬,也会因为“未来可期”四个字一直坚持。

回复
2021-7-13 08:54:45
回复
    相关推荐