0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙和LiteOS的内核都是一样的名字,可它们究竟有什么不同呢?

电子工程师 来源:HarmonyOS社区 作者:HarmonyOS社区 2021-01-13 10:17 次阅读

摘要

鸿蒙LiteOS的内核都是一样的名字,可它们究竟有什么不同呢?一起来对比一下文件吧!

HarmonyOS系统

HarmonyOS是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备。

鸿蒙系统的特点(硬件互助,资源共享):

01

分布式软总线

分布式软总线是多种终端设备的统一基座,为设备之间的互联互通提供了统一的分布式通信能力,能够快速发现并连接设备,高效地分发任务和传输数据。

02

分布式设备虚拟化

分布式设备虚拟化平台可以实现不同设备的资源融合、设备管理、数据处理,多种设备共同形成一个超级虚拟终端。针对不同类型的任务,为用户匹配并选择能力合适的执行硬件,让业务连续地在不同设备间流转,充分发挥不同设备的资源优势。

03

分布式数据管理

分布式数据管理基于分布式软总线的能力,实现应用程序数据和用户数据的分布式管理。用户数据不再与单一物理设备绑定,业务逻辑与数据存储分离,应用跨设备运行时数据无缝衔接,为打造一致、流畅的用户体验创造了基础条件。

04

分布式任务调度

分布式任务调度基于分布式软总线、分布式数据管理、分布式Profile等技术特性,构建统一的分布式服务管理(发现、同步、注册、调用)机制,支持对跨设备的应用进行远程启动、远程调用、远程连接以及迁移等操作,能够根据不同设备的能力、位置、业务运行状态、资源使用情况,以及用户的习惯和意图,选择合适的设备运行分布式任务。

05

一次开发,多端部署

HarmonyOS提供了用户程序框架、Ability框架以及UI框架,支持应用开发过程中多终端的业务逻辑和界面逻辑进行复用,能够实现应用的一次开发、多端部署,提升了跨设备应用的开发效率。一次开发、多端部署。

06

统一OS,弹性部署

HarmonyOS通过组件化和小型化等设计方法,支持多种终端设备按需弹性部署,能够适配不同类别的硬件资源和功能需求。支撑通过编译链关系去自动生成组件化的依赖关系,形成组件树依赖图,支撑产品系统的便捷开发,降低硬件设备的开发门槛。

HarmonyOS系统架构整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统]Huawei LiteOS是华为针对物联网领域推出的轻量级物联网操作系统,是华为物联网战略的重要组成部分,具备轻量级、低功耗、互联互通、组件丰富、快速开发等关键能力,基于物联网领域业务特征打造领域性技术栈,为开发者提供 “一站式” 完整软件平台,有效降低开发门槛、缩短开发周期,可广泛应用于可穿戴设备、智能家居、车联网、LPWA等领域。

fee63ff4-4789-11eb-8b86-12bb97331649.png

Huawei LiteOS

Huawei LiteOS自开源社区发布以来,围绕物联网市场从技术、生态、解决方案、商用支持等多维度使能合作伙伴,构建开源的物联网生态,目前已经聚合了50+ MCU和解决方案合作伙伴,共同推出一批开源开发套件和行业解决方案,帮助众多行业客户快速的推出物联网终端和服务,客户涵盖抄表、停车、路灯、环保、共享单车、物流等众多行业,加速物联网产业发展和行业数字化转型。

关键特性

1

低功耗框架

LiteOS是轻量级的物联网操作系统,最小内核尺寸仅为6KB,具备快速启动、低功耗等优势,tickless机制显著降低传感器数据采集功耗。

2

OpenCPU架构

专为LiteOS小内核架构设计,满足硬件资源受限需求,比如LPWA场景下的水表、气表、车检器等,通过MCU和通信模组二合一的OpenCPU架构,显著降低终端体积和终端成本。

3

安全性设计

构建低功耗安全传输机制,支持双向认证、FOTA固件差分升级,DTLS/DTLS+等,构建低功耗安全传输机制。

4

端云互通组件

LiteOS SDK端云互通组件是终端对接到IoT云平台的重要组件,集成了 LwM2M、CoAP、MQTT、mbed TLS、LwIP等全套IoT互联互通协议栈,大大减少开发周期,快速入云。

5

SOTA远程升级

SOTA远程升级,通过差分方式降低升级包的尺寸,更能适应低带宽网络环境和电池供电环境,经过特别优化差分合并算法,对RAM资源要求更少,满足海量低资源终端的升级诉求。

ff6230fa-4789-11eb-8b86-12bb97331649.jpg

系统支持对比

从官网的数据来看,目前HUAWEI LiteOS支持的硬件比鸿蒙还是丰富一些,提供了更多内核案例和移植策略,从代码来看,它们都支持Cortex-M内核和Cortex-A内核,HarmonyOS内核文件分别有两个,即liteos-a和liteos-m,例程分别有对应的支持,从内核名称上看到liteos的字样,可以推测鸿蒙内核对于Huawei LiteOS内核具有一定的继承性;而Huawei LiteOS开源主线上仅用一个统一的内核支持了多种CPU架构,可以从Arch目录下看到提供了对Cortex-A(包括32位及64位处理器)的支持,以及Cortex-M的支持。

总结两个系统对硬件内核架构的支持情况。

0006ab1c-478a-11eb-8b86-12bb97331649.png

因为产品定位不同,两个系统的对内存的差别也是非常大,HUAWEI LiteOS因为其具有很高的剪裁特性,在硬件资源有限的时候的仅保留内核,可以剪裁到6KB的ROM以及消耗2KB的RAM资源,可以说对资源的消耗是低到一定程度,而HarmonyOS为了保证系统性能要求,对硬件的资源则是128K的ROM及2MB的RAM的要求。

0033536a-478a-11eb-8b86-12bb97331649.png

从资源消耗可以看出,HUAWEI]现在两个系统都已经开始在市场在开发者在进行学习和开发,那对其硬件的支持又是如何,总结如下表:

009481ee-478a-11eb-8b86-12bb97331649.png

HarmonyOS的开发板支持目前还是以华为自研的芯片为主,都是自身主打的IOT及视频处理芯片,这样开发速度快可以更快的应用到自己的设备上,验证系统可靠性;HUAWEI LiteOS除了支持华为自研芯片的开发板外,还支持了市场上主流的ARM开发学习板(如STM原生、小熊派、野火、正点原子等),同时提供了移植指南,可以让开发者更容易进行开发板适配以及内核移植,并轻松进行IoT业务的上手和开发。

内核文件对比

因为两者对Cortex-M的内核名字都是liteos-m,因为我就对比了两者的内核kernel文件夹。

首先分别从各自的git库下载master下发布的最新文件:

文件库地址

HarmonyOS-liteos-m:

https://gitee.com/openharmony/kernel_liteos_m.git;

HUAWEI LiteOS:https://gitee.com/LiteOS/LiteOS.git;

从gitee上的库kernel文件夹下的文件的日期都是两个月前,说明内核的发布时间比较一致,那文件的内容,分别对比文件目录,发现有很大的相似性,共有文件目录都是/base;/extended;/include;HUAWEI LiteOS下会有一个Kconfig和Makefile用于文件包含定义和Kconfig文件菜单生成;而HarmonyOS则是BULD.gn和los_init.c分别用于IDE的文件编译及内核文件剪辑初始化文件,文件功能基本移植,只是适配的编译环境不同。

从这里开始就有些不同,base下的文件夹设置两者的区别较大。

00ddc94e-478a-11eb-8b86-12bb97331649.jpg

左边是HarmonyOS,右边是HUAWEI]左边是HarmonyOS提供task操作接口,右边是HUAWEI LiteOS提供task操作接口,都提供了task的初始化(建立),文件上下文查询,钩子函数的使用,同时HarmonyOS提供了所有task的信息获取,HUAWEI LiteOS提供了task入口地址的获取的细节功能。

0101c04c-478a-11eb-8b86-12bb97331649.jpg

左边是HarmonyOS提供task操作接口,右边是HUAWEI LiteOS提供task操作接口,都提供了task的初始化(建立),文件上下文查询,钩子函数的使用,同时HarmonyOS提供了所有task的信息获取,HUAWEI LiteOS提供了task入口地址的获取的细节功能。

今天分享到这里,后面希望可以分享各自系统移植及使用。

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 操作系统
    +关注

    关注

    37

    文章

    6268

    浏览量

    121844
  • 分布式
    +关注

    关注

    1

    文章

    750

    浏览量

    74052
  • 鸿蒙
    +关注

    关注

    55

    文章

    1564

    浏览量

    42109
  • OpenHarmony
    +关注

    关注

    23

    文章

    3215

    浏览量

    15155

原文标题:科普干货|谈谈鸿蒙LiteOS-M与HUAWEI LiteOS内核的几大不同之处

文章出处:【微信号:HarmonyOS_Community,微信公众号:电子发烧友开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    鸿蒙】小型系统LiteOS-A内核

    LiteOS-A 内核 移植概述 移植场景 LiteOS-A 当前支持 ARMv7-a 指令集架构,如果三方芯片为 ARMv7-a 架构,可以进行内核基础适配;否则还需要先根据芯片的架
    的头像 发表于 02-29 16:16 349次阅读
    【<b class='flag-5'>鸿蒙</b>】小型系统<b class='flag-5'>LiteOS</b>-A<b class='flag-5'>内核</b>

    tc297和tc275都是多核原理一样吗?

    tc297和tc275都是多核原理一样吗,我学了275可以上手297吗
    发表于 02-21 06:57

    鸿蒙内核源码分析:Newlib C

    使用 Musl C 库的时候,内核提供了基于 LOS_XXX 适配实现 pthread、mqeue、fs、semaphore、time 等模块的 posix 接口(//kernel/liteos
    的头像 发表于 02-18 15:41 236次阅读
    <b class='flag-5'>鸿蒙</b>轻<b class='flag-5'>内核</b>源码分析:Newlib C

    那些杠鸿蒙的现在怎么了?

    别杠,要杠就是你对。 个纯血鸿蒙就已经打了那些杠精的嘴,以前是套壳Android,大家纷纷喷鸿蒙。现在鸿蒙已经全栈自研,并且已经展开各大企业生态合作。不管什么独立系统,
    发表于 02-16 22:03

    请问AURIX片上电源中LDO和SMPS的功率都是一样大吗?

    AURIX片上电源中LDO 和SMPS的功率都是一样大吗?或是有啥区别?请大神指点迷津
    发表于 02-06 08:13

    同步电机的转数同步究竟是与什么同步啊?

    同步电机的转数同步究竟是与什么同步啊? 所有的同步电机的转数都一样吗?还是与电机的极对数有关系
    发表于 12-19 06:44

    普通硅二极管与肖特基二极管,究竟有何异同?

    普通硅二极管与肖特基二极管,究竟有何异同?
    的头像 发表于 12-07 09:33 296次阅读
    普通硅二极管与肖特基二极管,<b class='flag-5'>究竟有</b>何异同?

    CWDM光模块与DWDM光模块它们之间究竟有何区别呢?

    CWDM光模块与DWDM光模块它们之间究竟有何区别呢? CWDM和DWDM是两种常见的光模块技术。CWDM代表了“Coarse Wavelength Division Multiplexing
    的头像 发表于 12-07 09:07 421次阅读

    开关电源中高频磁芯的形状它们究竟有何不同?对变压器有哪些影响?

    开关电源中高频磁芯的形状它们究竟有何不同?对变压器有哪些影响? 开关电源中常用的高频磁芯有多种形状,例如环形磁芯、U型磁芯和E型磁芯等。这些不同形状的磁芯在开关电源中承担着不同的角色,并且对变压器
    的头像 发表于 11-29 16:07 610次阅读

    同样的电机,电压等级、功率等都一样,为什么电机的励磁电压不一样

    请教了好多人,都没有个真正的答案。 同样的电机,电压等级、功率等都一样,为什么电机的励磁电压不一样??
    发表于 11-17 08:28

    rgb屏的驱动方式都是一样的吗?

    rgb屏的驱动方式都是一样的吗
    发表于 11-06 07:28

    FreeRTOS内核实现与应用开发实战指南

    循序渐进,层层叠加的方式来编排章节的序号和名字,但是在具体的内容上是不一样的,因为针对的 RTOS 不一样。其中“新建 FreeRTOS 工程—软件仿真”和“裸机系统与多任务系统”这两章属于理论的抽象层
    发表于 09-28 08:05

    EMI、EMS、EMC究竟有什么异同

    似的EMI、EMS等专业名词也常常出现在大家面前,它们似乎都与防辐射(电磁辐射)有关,让人不明就里。那么,它们究竟有什么异同呢?
    的头像 发表于 09-04 15:21 432次阅读

    制作个在qemu上运行鸿蒙liteos-m内核

    1.本文概述 由于前几天芯来科技对鸿蒙LiteOS-M内核进行支持,在手上没有开发板的小伙伴,想要了解riscv和学习鸿蒙来说,也是十分的困难,所以我就打算做
    发表于 08-16 08:24

    ICD与ICE之间究竟有什么区别和联系?

    Lauterbach公司的Trace32-ICD和 Trace32-ICE。 那么二者之间究竟有什么区别和联系?回答这个问题这要从嵌入式系统调试手段的演化说起。
    发表于 06-19 06:06