【FCon上海】与行业领袖共话AI大模型、数字化风控等前沿技术。 了解详情
写点什么

内核代码量不到一万行、GitHub star 超 5k,国产开源物联网操作系统 TencentOS Tiny 的探索与实践

  • 2022-12-07
    北京
  • 本文字数:3341 字

    阅读完需:约 11 分钟

内核代码量不到一万行、GitHub star超5k,国产开源物联网操作系统TencentOS Tiny的探索与实践

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

嘉宾 | 王佳、汪礼超

作者 | 凌敏


国内物联网操作系统浪潮是从 2015 年前后掀起来的。在此之前,人们更习惯称其为嵌入式操作系统,这也是物联网操作系统的前身。当前,很多物联网操作系统仍是基于传统的嵌入式操作系统内核,与若干物联网相关软件栈组成终端软件平台。


随着物联网在智能家居、汽车、可穿戴设备等多个行业得到广泛应用,物联网操作系统的市场需求日益增长,国内也涌现出了多款受开发者欢迎的本土物联网操作系统。


2019 年 9 月,腾讯物联网操作系统 TencentOS Tiny 正式开源;2020 年 10 月,TencentOS Tiny 捐赠给中国开放原子开源基金会。截至 2022 年 11 月,TencentOS Tiny 在 GitHub 上的 star 数达 5.7k,fork 数量 1.5k,开发者规模达 5000 人。目前,TencentOS tiny 可支撑智慧城市、智能水表、智能家居、智能穿戴、车联网等多种物联网行业应用,能为物联网终端厂家和终端设备提供一站式软件解决方案。


近日,InfoQ 采访了腾讯操作系统研发负责人王佳、腾讯 TencentOS Tiny 项目负责人汪礼超,以期进一步了解 TencentOS Tiny 的发展历程与技术实践。


GitHub 地址:

https://github.com/OpenAtomFoundation/TencentOS-tiny

TencentOS Tiny 的探索与实践


对腾讯而言,做物联网操作系统是一件自然而然的事情。


依托云、安全、AI 等技术创新,腾讯云与智慧产业事业群(CSIG)一直致力于打造智慧产业升级方案,并形成了一条物联网生态链。针对云场景,腾讯早在 2010 年就打造了服务器操作系统 TencentOS Server。随着腾讯云边缘计算业务快速发展,腾讯在 2019 年也启动了边缘操作系统 TencentOS Edge 的研发。


物联网操作系统 TencentOS Tiny 的研发工作则启动于 2018 年。作为物联网生态链底层重要的一环,物联网操作系统在一定程度上能够促进整个物联网的生态,乃至由腾讯主导的产业物联网的发展。对下,物联网操作系统能完善物联网端到端解决方案,实现终端设备的互联互通;对上,能为云上海量数据平台引流,将云端的边缘计算、大数据分析等能力与业务场景相结合,从而使终端设备更加智能化。


对于这款操作系统的定位,腾讯在一开始就想得很清楚:针对 MCU 芯片,打造 B 端生态链的前端操作系统,低功耗,低资源占用。“与其他物联网操作系统相比,我们有自己的特点,比如我们对腾讯云的支持,以及针对物联网嵌入式应用的特性。我们没有把这款物联网操作系统做得大而全,而是选择做极致精简的内核。”汪礼超对 InfoQ 说道。


2019 年 9 月,TencentOS Tiny 正式在 GitHub 上开源,发布不到 1 周便登上了 GitHub 全网开源项目热榜第二的位置。从 2019 年开始,TencentOS Tiny 每年都会举办多场开发者活动,并陆续成立了内核、AI 等多个 SIG 组,其他物联网相关 SIG 组也在筹备当中。2020 年 10 月,腾讯将 TencentOS Tiny 捐赠给中国开放原子开源基金会。目前,TencentOS Tiny 支持硬件平台数量 80+,与 STM32、NXP、瑞萨半导体、华大半导体、沁恒微电子、Nordic、兆易半导体、国民技术、TI MSP、瑞兴恒方、广和通等多家 MCU 和模组厂家达成合作,共同推进物联网终端产品落地商用。

产品架构及技术特性



TencentOS Tiny 的产品架构从下往上依次是主流 MCU 芯片 / 模组、核心基础内核及物联网所需要的联网组件。


底层,MCU 芯片 / 模组包括 STM32 和主流的蜂窝通信模组,提供了驱动框架和外设框架,兼容不同硬件,方便适配不同硬件平台。顶层,提供了物联网常用的功能组件,如文件系统、KV 存储和高级语言引擎框架等等;提供了方便用户调用的业务层 API,业务层上也会提供常用的案例供客户和开发者参考。此外,还内置了安全框架,为终端设备的设备唯一标识、通信链路加密、密钥安全存储提供了保障,防止物联网设备被攻击。


整体而言,TencentOS Tiny 具备三个特性:


  1. 内核精简,低资源占用。在产品定位上,TencentOS Tiny 更聚焦在互联网领域,为其提供非常精简的操作系统。据介绍,TencentOS Tiny 内核整体代码量不超过一万行,所有组件也都是可裁减可配置的,能够实现超低资源的占用,降低物联网软件使用成本。IDLE 任务下,最小资源占用仅为 0.6KB RAM、1.8KB ROM。

  2. 高效管理框架,功耗低。智慧城市等领域对功耗非常敏感,这也是市场痛点之一。TencentOS Tiny 能动态调整系统功耗,完整包含 MCU 和外围设备功耗管理,用户可以根据业务场景选择可参考的低功耗方案,最小休眠功耗可以达到 uA 级别,有效降低设备耗电,延长设备寿命。

  3. 软件架构简洁,可移植性良好。TencentOS tiny 提供多种编译器快速移植指南和移植工具,目前已经支持主流芯片和通信模组,降低开发者使用门槛,有效提升开发效率。


作为底层基础设施,操作系统普遍难以创造直接收益,更多是通过为行业提供解决方案来实现商业化。因此,对物联网操作系统来说,如何打造自身的差异化竞争力是一个需要长期思考的问题。


在汪礼超看来,物联网操作系统需要根据不同的应用场景发挥自身优势,比如在金融场景,安全与否是关键;在能源场景,功耗是首要考虑的问题。根据不同的应用场景,形成对应的解决方案或打造上层软件应用包,这些都是实现商业化的途径。


目前,TencentOS Tiny 的应用场景主要包括 MCU 芯片 / 物联网模组、物联网终端设备厂家以及物联网解决方案:


  • 支持主流的 MCU 芯片,如 STM32 NXP 等,支持主流通信模组,如 ESP8266 Wi-Fi、LoraWAN 模组、NB-IoT 模组等;

  • 提供完整的终端软件栈,简单易用的端云 SDK 缩短设备厂家的开发周期,进而节省终端产品开发成本;

  • 提供一站式软件解决方案,方便各种物联网设备快速接入腾讯云,可支撑智慧城市、智能水表、智能家居、智慧农业、智能穿戴、车联网等多种行业应用。

物联网“碎片化”特性明显,如何做好生态建设?


物联网浪潮的兴起让“万物互联”成了可能。根据 IoT Analytics 的统计及预测,2020 年,全球共有 117 亿台物联网设备,联网设备数量第一次超过了非联网设备;预计到 2025 年,全球物联网设备连接数将超过 300 亿。


与 iOS、Android、Windows 等操作系统不同,物联网操作系统的终端形态差异巨大,不同的行业有着不同的消费终端。随着行业进入高速发展期,物联网以及物联网终端的形态更加复杂,需求呈现多样化,“碎片化”特征也更加明显。


“现在物联网领域最大的问题就是‘碎片化严重’,操作系统作为物联网生态的其中一环,不足以解决整个‘碎片化’难题。不过,我们非常看好万物互联这个方向,也有比较全面的布局。”据王佳介绍,不同于桌面、服务器操作系统提供通用解决方案,物联网操作系统更具针对性,专注的领域更加垂直。


正因如此,要想做好物联网操作系统生态,需要行业形成统一标准,达成技术共识。“有了统一的行业标准后,生态链上的不同角色能够更好地合作互通,降低软硬件适配成本。否则,物联网操作系统生态将一直处于割裂状态。”汪礼超表示,目前在智能家居行业,这一愿景已初步实现——行业在酝酿新的智能家居协议,以解决“碎片化”难题。也许在未来,针对某个行业,会出现行业级别的物联网操作系统“一统江湖”,但归根结底,还是要由市场需求来驱动。


物联网操作系统要想进一步发展,汪礼超认为,行业需要找到共用的一套融合操作系统,或是共建一个融合性的社区,共同推动行业达成共识,一起把蛋糕做大。就像在服务器操作系统领域,大家普遍基于 Linux 内核构建操作系统,在技术栈上能够实现统一。在物联网操作系统领域,也可以形成统一的技术标准,包括硬件接口标准、内核接口标准、物联网协议标准、应用接口标准等。“展望未来,无论是针对细分领域还是针对整个行业,物联网操作系统都需要建立一套标准。这套标准也一定是大家共同建立和维护的。”


在汪礼超看来,除了要形成统一的物联网操作系统行业标准,让不同设备之间可以基于一套标准实现互联互通,在未来,这些趋势 / 方向同样值得关注:


  • 微内核。微内核的核心优势是内核精简,可剪裁,能更方便地部署到不同的硬件上。

  • RISC-V 架构。作为一种新兴的精简指令集架构,RISC-V 最大的特点是开源免费,降低物联网终端成本,促进物联网操作系统与硬件的结合,加快软件体系发展。

  • 车联网。未来新能源汽车有可能彻底取代传统燃油车,并且新能源汽车的智能化程度更高,对软件系统的要求也会更高,在物联网协议、安全、人机交互等方面都将提出更高的要求,这也是物联网操作系统在未来比较大的业务方向之一。

公众号推荐:

AIGC 技术正以惊人的速度重塑着创新的边界,InfoQ 首期《大模型领航者AIGC实践案例集锦》电子书,深度对话 30 位国内顶尖大模型专家,洞悉大模型技术前沿与未来趋势,精选 10 余个行业一线实践案例,全面展示大模型在多个垂直行业的应用成果,同时,揭秘全球热门大模型效果,为创业者、开发者提供决策支持和选型参考。关注「AI前线」,回复「领航者」免费获取电子书。

2022-12-07 10:3012408

评论

发布
暂无评论
发现更多内容

第四周 - 学习总结

molly

极客大学架构师训练营

大型互联网应用系统所使用的技术方案

olderwei

极客大学架构师训练营

互联网架构演进的学习思考

架构5班杨娟Jessie

极客大学架构师训练营

架构师训练营第四周总结

跨域刀

极客大学架构师训练营

架构师训练营第四周课后总结

Cloud.

架构师训练营第 4 周作业

Season

极客大学架构师训练营

架构模式和重构

GalaxyCreater

架构

第四周总结

而立斋

Week 04 作业

鱼_XueTr

架构

大型互联网应用的发展和未来

拈香(曾德政)

互联网 极客大学架构师训练营 互联网架构 互联网架构的演进

04周作业——互联网系统架构

dao

极客大学架构师训练营 作业

深入解析典型的大型互联网应用系统

拈香(曾德政)

互联网 架构师 极客大学架构师训练营 互联网架构 互联网应用技术方案

架构师课作业 - 第四周

Tulane

系统架构知识是架构师的常识而不是能力(第 4 周学习总结)

李德政

极客大学架构师训练营

第四周作业 - 命题作业

molly

极客大学架构师训练营

大规模复杂系统如何架构(一)?

李小匪

架构 极客大学架构师训练营

系统架构

olderwei

极客大学架构师训练营

架构师训练营Week04homework

Nick

极客大学架构师训练营

架构师训练营第四周作业和小记

tuuezzy

架构师 极客大学架构师训练营

一周风云之互联网构架演进

Dawn

分布式系统架构学习总结(第四周)

吴建中

极客大学架构师训练营

架构师训练营第四周总结

allen

架构师第四课总结

Dennis

面向对象学习

一叶知秋

互联网系统架构总结

紫极

架构师训练营-作业4

紫极

架构师训练营 - 总结4

进击的炮灰

总结04-互联网架构演化

梦子说

课程作业

week4 命题作业

小叶

极客大学架构师训练营

架构师训练营第四周

跨域刀

极客大学架构师训练营

架构师训练营week04 summary

Nick

极客大学架构师训练营

内核代码量不到一万行、GitHub star超5k,国产开源物联网操作系统TencentOS Tiny的探索与实践_文化 & 方法_凌敏_InfoQ精选文章