死鱼喜欢猫 2020-04-16
随着物联网产业的迅猛发展,物联网设备的种类和数量也随之快速增长。据 Gartner 预测,到 2020 年全球物联网设备将超过 260 亿个,物联网市场规模将达到 1.9 万亿美元。与传统的 IT领域不一样,物联网设备分布在各个不同领域,功能和形态各不相同,这对物联网提出了巨大的挑战。
物联网依靠互联网完成信息的传递,嵌入式系统的加入使得信息传递更具有专用性。在物联网出现前,嵌入式系统已经有 30 多年的发展历史,但一直隐藏在幕后。自从物联网上升为国家战略后,嵌入式系统也从后台走向前台。
一提到嵌入式操作系统,自然绕不开嵌入式 Linux 操作系统。嵌入式Linux 是将Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行。它性能优异,软件移植容易,代码开放,有许多应用软件支持。但也具有难以弥补的缺陷,Linux有着复杂的内核,软硬件成本高,功耗高。
因为上述缺陷,在对实时性要求比较高,成本控制比较严格或者低功耗应用等物联网场合,常常会使用实时操作系统RTOS(实时操作系统,英文全称 Real-time operating system)。
与 RTOS 相对应的是 TSOS(分时操作系统,英文全称 Time Sharing Operating System),我们所熟知的 Windows、Linux、Unix 都属于 TSOS。
RTOS 在问世之初是因为早期 CPU 任务切换开销过大,随着工业和物联网的发展,许多特殊场景重要任务执行优先度极高。因此,利用实时操作系统可以避免频繁切换任务浪费的 CPU 时间,并且能满足一些实时要求较高的场景。
当然,RTOS 不仅仅具有实时性这一特征,从本质上说,它还是一款操作系统。为了满足物联网设备的轻量化需求,RTOS 普遍来说都拥有极小的体积、极低的功耗和极高的启动速度,并提供丰富的组件、工具链和社区。
在 RTOS 领域中,占据半壁江山的是发源于美国的 FreeRTOS , TI、飞思卡尔、Atmel、ST 等国外半导体大厂均选择其作为默认搭载的嵌入式操作系统。除FreeRTOS 外,还有 uC/OS、RTX 、QNX、VxWorks等 RTOS 在国外也较为流行。
物联网的蓬勃发展,对传统嵌入式操作系统提出了新的要求和挑战。FreeRTOS和uC/OS 等传统的 RTOS ,仅是一个内核,没有上层组件。很难满足对于联网、存储、安全、低功耗等多方面的需求,企业基于 RTOS 内核开发软件的周期也颇为冗长。
物联网对设备开发、运营模式和产业格局产生了全面的冲击和颠覆。设备联网使得终端开发的难度大幅增加,碎片化又造成产业资源的巨大浪费。一款标准化的、带有丰富中间层组件的操作系统(IoT OS),将极大程度上解决以上问题。
物联网时代,IoT OS 已经成为大势所趋,其战略价值和地位与嵌入式时代的 RTOS 内核不可同日而语。它是一个软件平台,是所有终端接入云端的入口。国内外巨头都在纷纷布局并重金投入。
RT-Thread 系统完全开源,它不仅仅有一个实时系统内核,还具备丰富的中间层组件,包括如文件系统、图形库等较为完整的中间件组件,具备低功耗、安全、通信协议支持和云端连接能力的软件平台。伴随着物联网的兴起和发展,RT-Thread 正演变成为一个功能强大、组件丰富、开发简易、高可扩展性和高安全性的 IoT OS。
RT-Thread 软件架构
RT-Thread 的软件架构包含以下几部分:
RT-Thread 内核:RT-Thread 的核心部分,跨硬件平台是使用 RT-Thread 的最大好处之一。RT-Thread 支持所有主流的 CPU 架构,如 ARM、RISC-V、MIPS、Xtensa、X86等,支持几百款的 MCU 、无线连接芯片和应用处理器。通过设计科学的设备框架,实现上层应用和下层硬件(包括主控芯片、传感器、无线连接芯片等)无关,一次开发,跨平台部署。
RT-Thread 平台:基于 RT-Thread 内核之上的上层软件,长期的积累发展,使得 RT-Thread 拥有完善的软件生态。兼容 POSIX 接口标准,使得 Linux 应用的移植变得轻而易举;支持 CMSIS、Web Socket 等各种主流软件接口、协议。支持业界主流的开发工具,GCC、IAR、Kail 等。
基于优异的软件架构,RT-Thread 能实现最佳的松耦合、模块化,即可应用于最小 MCU 系统(例如一个传感器节点),也可轻松扩展到联网设备和高端智能设备(例如采用 Coretex-A7 的智能音箱、双核 A9 的风机控制设备)。
RT-Thread 软件包、中间件:具有完备的中间层组件,几乎覆盖物联网行业所需的所有基础软件,如文件系统、低功耗管理、网络协议、音频框架、主流 IoT 云的 SDK 等,这也是开发者青睐,选择 RT-Thread 的最重要原因之一。去年推出的软件包生态,也正在蓬勃发展,目前已经有接近 200 个覆盖各个品类的开源软件包,供开发者使用。软件包生态对于一个操作系统的选择至关重要,因为这些软件包具有很强的重用性,模块化程度很高,极大地方便应用开发者在最短时间内,打造出自己想要的系统。
京东智联云基于 RT-Thread 推出了物联网操作系统,包含RT-Thread 为京东云定制的服务组件,内置京东智联云物联网服务和协议,提供包括配网、设备控制、OTA 升级、安全认证及策略等全套物联网服务,极大提升了产品接入效率,增强安全性。可广泛应用于智能家居、智慧城市、智慧工业等物联网领域,是产品智能升级和接入京东智联云的不二选择。
点击【阅读】可获取京东服务组件,快速上手物联网开发。