腾讯物联网操作系统(TencentOS tiny)是腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,可裁剪等特性。TencentOS tiny 为物联网终端厂家提供一站式软件解决方案,方便各种物联网设备快速接入腾讯云,可支撑智慧城市、智能水表、智能家居、智能穿戴、车联网等多种行业应用。
腾讯云大学为大家整理了参与了TencentOS tiny技术特性规划及开发的「腾讯云高级工程师戴胜冬」老师直播课的内容。课程针对新接触TencentOS tiny的开发者,从宏观角度分解TencentOS tiny的技术架构,让开发者快速了解TencentOS tiny的软件能力栈;针对弱基础的基于RTOS内核的嵌入式开发者,设计了基于TencentOS tiny的嵌入式RTOS开发范式讲解环节,此环节展示基于嵌入式RTOS内核基本能力的开发案例;针对端测最常见的基于模组联网场景,设计了基于TencentOS tiny模组通讯框架的开发讲解环节,此环节展示基于TencentOS tiny AT框架的模组驱动开发范式;最后一个环节,基于TencentOS tiny集成的腾讯云sdk能力,展示一个具体的上云案例开发流程,助力开发者快速构建自己的物联应用。
一、TencentOS tiny技术架构讲解
下图是TencentOS tiny github官网首页README中的整体架构图。
这个架构较为笼统,我们通过从TencentOS tiny作为一个端测操作系统的角度对架构进行拆解:
TencentOS tiny底层是一个实时操作系统(RTOS)核心,此核心提供了中断管理、内存管理、异常管理、多任务管理、时间管理、实时调度等最基本的RTOS功能,在此之上提供了信号量、互斥锁、事件、消息队列、完成量、计数锁等多任务通信机制。在内核的基础接口之上,提供了cmsis接口适配层,对于用户来说,可以通过cmsis接口访问内核功能,也可以直接访问内核层的接口。
从硬件抽象能力的角度对架构进行拆解,TencentOS tiny对下支持IoT领域最常见的CPU核心(包括arm v6、v7架构,以及RISC-V架构),集成了最常见的mcu板级开发包(noridc、st、nx