鸿蒙OS

HarmonyOS是一款面向全场景的开源分布式操作系统,是华为自主研发的操作系统。

鸿蒙OS实现模块化耦合,可应用在不同的设备上。

鸿蒙OS架构分为三层:

  • 第一层是内核
  • 第二层是基础服务
  • 第三层是程序框架 。

鸿蒙OS底层三部分组成:

  • 鸿蒙微内核
  • Linux内核
  • Lite OS组成

鸿蒙OS针对所有的用户,都提供了便利性:

消费者:鸿蒙OS能够将生活场景中的各类终端进行能力整合,可以实现不同的终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验。

应用开发者:鸿蒙OS采用了多种分布式技术,使得应用程序的开发实现与不同终端设备的形态差异无关。这能够让开发者聚焦上层业务逻辑,更加便捷、高效地开发应用。

设备开发者:鸿蒙OS采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求源码地址

RT-Thread

RT-Thread,不仅仅是一个单一的实时操作系统内核,同时也是一个完整的应用系统,包含了实时、嵌入式系统相关的各个组件:TCP/IP协议栈,libc接口,图形用户界面等。

RT-Thread提供了较多的软件包,能够方便的解决开发过程中的问题,减少开发周期。

RT-Thread架构

鸿蒙操作系统架构 鸿蒙操作系统底层架构_物联网

IO设备框架

RT-Thread的IO设备框架位于硬件和应用程序之间,共分成三层:

  • I/O设备管理层
  • 设备驱动框架层
  • 设备驱动层

该设备框架屏使设备驱动与应用层进行解耦,可以屏蔽掉不同芯片驱动对应用层所带来的干扰

鸿蒙操作系统架构 鸿蒙操作系统底层架构_物联网_02

源码地址

TencentOS

TencentOS tiny是腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,安全可靠等特点,可有效提升物联网终端产品开发效率。TencentOS tiny 提供精简的 RTOS 内核,内核组件可裁剪可配置,可快速移植到多种主流 MCU及模组芯片上。而且,基于RTOS内核提供了丰富的物联网组件,内部集成主流物联网协议栈,可助力物联网终端设备及业务快速接入腾讯云物联网平台。

TencentOS架构

鸿蒙操作系统架构 鸿蒙操作系统底层架构_鸿蒙操作系统架构_03

源码地址

FreeRTOS

一个FreeRTOS 系统主要由BSP驱动+内核+组件组成。内核包含多任务调度、内存管理、任务间通信的功能,组件包含网络协议、外设支持等。

FreeRTOS架构

鸿蒙操作系统架构 鸿蒙操作系统底层架构_华为_04

FreeRTOS特点

FreeRTOS 的内核支持抢占式,合作式和时间片调度。

提供了一个用于低功耗的 Tickless 模式。

系统的组件在创建时可以选择动态或者静态的 RAM,比如任务、消息队列、信号量、软件定时器等等。

FreeRTOS-MPU 支持 Corex-M 系列中的 MPU 单元,如 STM32F429。

FreeRTOS 系统简单、小巧、易用,通常情况下内核占用 4k-9k 字节的空间。

高可移植性,代码主要 C 语言编写。

高效的软件定时器。

强大的跟踪执行功能。

堆栈溢出检测功能。

任务数量不限。

任务优先级不限

µC/OS

µC/OS是由Micrium公司研发的实时操作系统,以µC/OS-II或µC/OS-III为内核,附带有多种插件以实现不同的功能。这款操作系统主要面向于微处理器,如单片机、DSP等。它具有优秀的可移植性、功能可伸展性等特点,是抢占式的硬实时多任务操作

mbed-os

mbed os是一个ARM自己打造的开源嵌入式操作系统,专为物联网(iot)中的"物物"而设计。它包括开发基于 arm cortex-m 微控制器的连接产品所需的所有功能。

架构图

鸿蒙操作系统架构 鸿蒙操作系统底层架构_实时操作系统_05

BabyOS

BabyOS适用于MCU项目,它是一套管理功能模块和外设驱动的框架。

对项目而言,缩短开发周期。项目开发时选择适用的功能模块及驱动。直接进入功能代码编写的阶段。

对工程师而言,减少重复工作。调试过的功能模块和驱动代码放入BabyOS中管理,以后项目可以直接使用,去掉重复调试的工作。

架构图

鸿蒙操作系统架构 鸿蒙操作系统底层架构_实时操作系统_06

LuatOS

LuatOS-SoC是一款实时操作系统,用户编写Lua代码就可完成各种功能, 仅需极少的内存和Flash空间。

架构图

鸿蒙操作系统架构 鸿蒙操作系统底层架构_harmonyos_07

源码地址klite

它是一款入门级的小型抢占式操作系统内核,以简洁易用为设计目标,旨在降低学习嵌入式操作系统编程和入门的难度

简洁的API风格,简洁的调用方式,简单的移植方法,可能是目前最简单易用的嵌入式操作系统内核.

lmosem

lmosem是一个完全从第一行引导代码开始编写,基于ARM平台,支持多进程、多CPU、内存管理、文件与设备管理的全32位操作系统内核。

LMOSEM总体上分为三大层:HAL层、内核功能层、接口层

源码地址FreeNOS

FreeNOS微内核操作系统