1.2.2 华为LiteOS架构
一个成熟和高效的AIoT架构必须由成熟的云侧服务和高效的边缘侧系统协作组成。目前以华为云为代表的国产云服务平台发展得较为成熟,而在边缘侧的物联网操作系统方面发展却相对较慢。
Huawei LiteOS是华为面向AIoT领域进行设计、部署于边缘侧终端设备上的轻量级物联网操作系统,可广泛应用于智能家居、个人穿戴、车联网、城市公共服务、制造业等领域。Huawei LiteOS发布于2015年5月的华为网络大会上。自开源社区发布以来,Huawei LiteOS围绕物联网市场从技术、生态、解决方案、商用支持等多维度使能合作伙伴,构建开源的物联网生态,目前已经聚合50家以上的MCU和解决方案合作伙伴,共同推出一批开源开发套件和行业解决方案,帮助众多行业客户快速推出物联网产品和服务。客户涵盖抄表、停车、路灯、环保、共享单车、物流等众多应用,为开发者提供“一站式”完整软件平台,可大幅降低设备布置及维护成本,有效降低开发门槛、缩短开发周期。高实时性,高稳定性。超小内核,基础内核体积可以裁剪至10K,低功耗,配套芯片整体功耗低至uA级,支持功能静态裁剪。
Huawei LiteOS开源项目目前支持ARM64、ARM Cortex-A、ARM Cortex-M0、Cortex-M3、Cortex-M4、Cortex-M7等芯片架构,主要具有高实时性、高稳定性、超小内核(基础内核体积可以裁剪至不到10KB)、低功耗(配套芯片整体功耗低至uA级)、支持功能静态裁剪等优势。Huawei LiteOS支持多种芯片架构,如Cortex-M series、Cortex-R series、Cortex-A series等,可以快速移植到多种硬件平台。Huawei LiteOS也支持UP(单核)与SMP(多核)模式,即支持在单核或者多核的环境上运行。除基础内核外,Huawei LiteOS还包含丰富的组件,可帮助用户快速构建物联网相关领域的应用场景及实例,其架构主要包含以下组成部分。
• 基础内核:包括不可裁剪的极小内核和可裁剪的其他模块。极小内核包含任务管理、内存管理、中断管理、异常管理和系统时钟。可裁剪的模块包括信号量、互斥锁、队列管理、事件、软件定时器等。
• 内核增强:在内核基础功能之上,进一步提供增强功能,包括C++支持、调测组件等。调测组件提供了强大的问题定位和调测能力,包括shell命令、Trace事件跟踪、CPU占用率、LMS等。
• 文件系统:提供一套轻量级的文件系统接口以支持文件系统的基本功能,包括vfs、ramfs、fatfs等。
• 应用接口层:提供一系列系统库接口以提升操作系统的可移植性和兼容性,包括Libc、Libm、POSIX以及CMSIS适配接口。
• 协议栈:提供丰富的网络协议栈以支持多种网络功能,包括CoAP、LwM2M和MQTT等。
• 组件:构建于上述组件之上的一系列业务组件或框架,以支持更丰富的用户场景,包括OTA、GUI、AI框架和传感框架等。
• IDE(Huawei LiteOS Studio):基于LiteOS操作系统定制开发的一款工具。它提供了界面化的代码编辑、编译、烧录、调试等功能。
总之,Huawei LiteOS是一款优秀的轻量级物联网操作系统,本书后续将主要以其为例进行相应内容的介绍与说明。