问题1:老师好,鸿蒙特色能力——分布式能否允许轻设备之间自由通信,还是必须依靠智能手机作为桥梁实现数据交换和处理?
回答:目前从鸿蒙已经披露的资料来看,并未强制要求必须以手机为桥梁。也就是说技术上、理论上来说完全可以轻设备之间直接互通的。但是实际上从鸿蒙的典型场景来说,基本都是围绕手机为中心节点来设计的。这是合理的,有以下原因:
1、手机目前是离人最近的设备,人已经很习惯通过手机来做各种事情了。
2、手机是最方便的富设备,通过手机来管理一些轻设备很方便(譬如通过手机的运动健康app来管理手表手环的数据、程序)。
3、华为的核心利益还是在手机,鸿蒙前期的核心优势也在华为手机的几亿存量用户,所以以手机为中心便于展开。
问题2:当年安卓刚出来,懂一点的人就起飞了。对于鸿蒙,现在的开发者应该可以做一些什么准备,包括现在热门的人工智能,物联网和鸿蒙会有怎样的联系
回答:首先可以确定,鸿蒙OS的前期肯定会有一波机会点和增量,所以也会有一拨人被带飞,这也是早期入局鸿蒙的一大优势。
其次,人工智能、物联网和鸿蒙的联系是非常紧密的。因为我们说鸿蒙是AIoTOS,这里的AIoT就是AI(人工智能)和IoT(物联网)。所以AI和IoT都会是鸿蒙的组件,也会是鸿蒙源生支持的核心能力(目前发布的鸿蒙是早期版本,可能还没看到,但是后面一定会有AI和IoT的组件的)。
问题3:鸿蒙相对于linux有哪些优势?鸿蒙操作系统的价值体现在哪里?
回答:鸿蒙和linux有层次的差异的。linux更多是一个os kernel,也就是内核,linux更多关注的是面向功能和资源管理的部分,偏“基础设施”。而鸿蒙是一个完整的操作系统,说完整,至少包括kernel+framework+应用框架+开发工具,所以鸿蒙在系统架构上是和安卓对标的。我看到一些信息讲,后面发布的富鸿蒙的内核会使用linux而不是liteos,从这里就能看出鸿蒙和linux的层级差异了。
鸿蒙操作系统的价值主要是面向AIoT的,鸿蒙最大的创新是通过软总线实现了多设备的虚拟终端。这种思路实际上最早是在云计算平台中采用的,所谓的设备虚拟化技术。但是华为将这种思路用在了多个物理设备中,可谓是端侧设备开发体系的巨大创新和挑战。所以鸿蒙相对于android和ios是有本质差异和创新的。关于这点可以去看我在51cto学院鸿蒙社区发布的大量免费课程,有详细讲这些。
问题4:鸿蒙的编译框架是怎样的;如何利用整个编译框架实现简单的 MCU 平台移植,如STM32 ?
回答:鸿蒙OS的源码框架较复杂,本身涉及到移植的部分主要有2大块:一块是kernel内,一块是驱动和bsp。
要想做移植,首先要搞懂鸿蒙源码的组织结构和配置编译原理,这块主要涉及到makefile、nijia、python脚本等几个知识点。
然后在移植时关键是注意目标平台与目前鸿蒙源码中官方支持的平台的差异,这对移植难度影响非常大。譬如说harmonyos2.0首发时默认支持了3款海思的硬件,芯片分别是arm cortex-A7和riscv的,所以目前要往这2个内核的芯片上移植会容易很多。但是如果要自己移植到其他内核的芯片上难度就会大很多,需要对目标平台的底层汇编部分比较了解。
原文来自51CTO社区