鸿蒙

作者: 小水neo | 来源:发表于2021-05-22 21:31 被阅读0次

    简介

    与Android的体系结构不同, 鸿蒙系统更加强调灵活性, 旨在

    1. 利用同一套系统,适配手机、电视、平板、智能穿戴设备、等终端。

    主要通过框架层去实现,提供用户程序框架、Ability框架以及UI框架,

    1. 硬件互助,资源共享

    为了实现以上的目的,鸿蒙系统主要依赖于以下几种技术:

    • 分布式软总线

    • 分布式设备虚拟化

    • 分布式数据管理

    • 分布式任务调度

    1. 统一OS,弹性部署(可剪裁)
    image

    鸿蒙的架构大致如下所示:

    image

    与Android的区别

    据维基百科显示:

    华为声称HarmonyOS是基于微内核的分布式OS,与Android和iOS完全不同。[25]但是,后来透露,HarmonyOS 1.0基于Android 9.0“ Pie”,并支持Android (ADB)。

    同样发现HarmonyOS 2.0是从Android 10派生的Ars Technica发现智能手机beta版只是EMUI 10的重新命名版本,所有对Android的引用都由“ HarmonyOS”代替,而“ DevEco Studio” SDK很大程度上基于与Android Studio软件位于同一核心IntelliJ IDEA组件上。

    启动流程

    • Android

    初始化,启动linux内核

    -> 启动init进程

    -> 调用startVM开启dalvik虚拟机,加载java核心类startReg注册JNI方法,启动Android Runtime,启动Zygote进程

    -> 注册socket,等待ActivityManagerService创建新进程的请求

    image
    • 鸿蒙
    image

    软总线源码解析

    image

    分布式软总线是手机、平板、智能穿戴、智慧屏、车机等分布式设备的通信基座,为设备之间的互联互通提供了统一的分布式通信能力,为设备之间的无感发现和零等待传输创造了条件。开发者只需聚焦于业务逻辑的实现,无需关注组网方式与底层协议。分布式软总线示意图如上图所示。

    为实现以上的功能,鸿蒙底层的代码架构如下:

    image
    • discover:提供基于 COAP 协议的设备发现机制;
    • authmanager:提供设备认证机制和知识库管理功能;
    • trans_service:提供身份验证和数据传输通道;
    • os_adapter:检测运行设备性能,决定部分功能是否执行。

    影响

    作为使用者,其实短时间内很难感受到鸿蒙与安卓系统的功能性差异(除了现在部分使用GMS去Google Store下载无广告版app的人)等待其完全开源后,各大手机厂商未来可能基于其做魔改,进而抛弃之前的Android系统。这一招釜底抽薪,估计才是HW的野心所在。至于微内核,分布式和高适应性,至少从现在的测试数据上来看,似乎没有太大的区别。

    纵观历史,其实早在2012年,阿里云已经搞过了YunOS(alios),腾讯也搞过Tencent OS,甚至在更早的时候,Windows的 Windows phone,凭借着其直接编译成机器码,以及系统资源消耗较少的优势,也曾在市场上占有一席之地但因为不向下兼容、缺乏长期战略,生态不好等原因,逐渐退出了大众的视野。再回过头来看如今的鸿蒙,其火起来了的最主要原因,个人认为还是政策问题(dddd),但是一项技术是否真的能够引起变革,这个谁也说不准,只能交给接下来的时间。

    参考资料

    https://device.harmonyos.com/cn/docs/develop/kernel/oem_kernal_user_process-0000001050032733

    https://gitee.com/openharmony

    https://harmonyos.51cto.com/posts/3893

    https://github.com/Awesome-HarmonyOS/HarmonyOS

    相关文章

      网友评论

          本文标题:鸿蒙

          本文链接:https://www.haomeiwen.com/subject/whvojltx.html