操作系统系列(四):物联网时代先行者——轻量级IoT操作系统

操作系统的支出和回报

在前几篇系列文章中已经叙述了一款操作系统想要获得普遍应用的难度,而且操作系统的领先优势不具备可延续性。从PC时代到功效机时代,再到智能机时代,占有统治职位的操作系统已经更换了两拨。以至于有人会说,要想站在上一个时代展望下一个时代哪家公司做操作系统会乐成根本是不可能的事情,其中包含了大量的不确定性和运气身分。

操作系统背后的软硬件生态支持都很主要,硬件兼容和软件生态的确立是一款操作系统生长的命门。这看起来就不像是创业公司能做的事。固然了,巨头光环作用似乎也不大,微软折戟移动时代刚刚已往,现在谷歌、亚马逊、苹果等巨头缠斗物联网操作系统。

然则依托操作系统的竞争护城河回报也是丰盛的。苹果公司依赖自有的ios系统和相对应软硬件支持,以移动市场不到20%的市场份额,占到整个智能手机市场利润的73%(2018年数据)。谷歌公司则依赖开源安卓系统,团结宽大手机厂商的形式输出一整套移动时代的工具(GMS),进而直接为自己旗下的种种工具、应用导流,确立起伟大广告营业帝国的深深护城河。在不是自己地皮的iOS生态内,谷歌每年都支付高昂的用度使得苹果手机内保持默认搜索的首选项是谷歌搜索,这个价钱在2019年已经达到了120亿美元。

操作系统毫无疑问是一个赢家通吃的残酷战场。

物联网操作系统

险些所有人都认可在智能手机之后的下一个时代属于物联网,但物联网的一些关键性营业生长上还混沌不清,好比物联网的操作系统。

随着入网装备数目的指数级增添,已往一些无法和用户发生交互的装备将发生交互需求,而由众多装备组成的集成网络也对操作系统提出了新的要求。

跨平台的操作系统在研发层面是很难的,生长的历程很大程度上也是对已往积累的不停甩掉。微软一直在追求跨平台操作系统的开发,但到现在为止也没有乐成。苹果则接纳的是折中的方案,或裁剪,或重写后推出了MacOS、iOS、WatchOS和TvOS这四款划分对应于电脑、手机、手表和电视的操作系统。现在的许多厂商也接纳裁剪的方式推出过渡阶段的系统,好比安卓基础上裁剪出的Android Things、Win10基础上裁剪出的 Win10 IoT,以及AliOS裁剪出的AliOS Things等。

在物联网操作系统的生长上,首先获得实现的照样物与物之间相同的轻量化操作系统。现在市面上盛行的物联网操作系统大多数也围绕轻量级睁开,主要解决的是终端装备之间,以及终端装备和云端的信息交互。本文重点先容物联网时代的先行者——轻量级物联网操作系统。

轻量级物联网操作系统

轻量级操作系统的泛起是为了知足联网装备对于低性能、低功耗、实时可靠的需求,随着物联网产业的生长,轻量级物联网系统逐渐从手艺人员的开源开发兴趣转移到大厂的重点结构,其中,外洋代表性的事宜是2014年ARM公司(主业是芯片IP授权)亲自下场推出平台化的物联网操作系统mbed OS,以及2017年底亚马逊IoT部门“招安”Free RTOS作者,其入职成为亚马逊AWS任首席工程师,随后亚马逊正式推出Amazon FreeRTOS。海内对物联网产业有兴趣的巨头也没闲着,华为2015年推出轻量级物联网系统LiteOS,阿里在YunOS手机操作系统挫败后转而将其向物联网偏向生长,推出AliOS Things,国产物联网操作系统RT-Thread也因其10多年积累和开源免费成为普遍使用的操作系统。

Amazon FreeRTOS

于2003年推出的 FreeRTOS在全球范围内具有大量的使用者,据EEtimes杂志嵌入式系统市场讲述2011-2017数据显示,FreeRTOS在RTOS内核使用榜和RTOS内核设计使用榜上都居前线。

使用者众以及开源免费带来的优势是文档及学习资料充实,降低了开发者的学习门槛。2017年之后FreeRTOS还获得了亚马逊平台的支持,低功耗的小型装备可以平安地毗邻到 AWS 云服务上,提高了端侧操作系统的云端支持能力。

FreeRTOS和AWS云服务的配合

操作系统系列(四):物联网时代先行者——轻量级IoT操作系统

                                                                                                                    泉源:官网截图

亚马逊对FreeRTOS的支持还带来了生态方面的助力,AWS的合作伙伴生态系统提供了普遍的选择,包罗社区孝敬、专业支持以及集成的开发和生产力; FreeRTOS 中预集成的项目也便于装备与云端的毗邻。

ARM mbed OS

ARM公司作为移动时代最乐成的芯片IP授权提供商,通过部署操作系统的形式介入到物联网时代中。这对于其牢固自身在嵌入式芯片(cortex-M等系列)的市场职位也具有主要意义。

其于2014年推出针对物联网应用的的开源嵌入式操作系统mbed OS,具有支持确定性、多线程实时的特点,适用于低时延的工业自动化控制和车联网上。

mbed OS的一大优势在于,ARM是真正懂硬件层架构设计的,因此在硬件兼容性规范上1具有先天优势。其添加了硬件抽象层(HAL),便于统一嵌入式硬件生态。ARM在mbed平台上提供了60多家经由mbed enable认证的硬件方案供开发者选择,包罗100多种开发板和400多个元件库,涵盖了市面上主流的芯片厂商,如NXP、Atmel、ST、瑞萨等,减少了软件开发者由于硬件不兼容缘故原由的二次开发和移植逆境。

ARM Mbed OS及其平台在通讯协议、硬件兼容等问题上做出的起劲

操作系统系列(四):物联网时代先行者——轻量级IoT操作系统

                                                                                                                       泉源:mbed OS官网

华为LiteOS

Huawei LiteOS是华为面向物联网领域开发的一个基于实时内核的轻量级操作系统,于2015年推出,可普遍应用于智能家居、小我私家穿着、车联网、都会公共服务、制造业等领域。

官网公布的HuaWei LiteOS框架图

操作系统系列(四):物联网时代先行者——轻量级IoT操作系统

                                                                                                                     泉源:华为官网

凭据LiteOS的开发文档,其现在支持现在支持ARM Cortex-M0,Cortex-M3,Cortex-M4,Cortex-M7等芯片架构,适配了30+ 通用 MCU开发套件,5套NB-IoT集成开发套件。整体来看,LitOS具有低功耗框架(最小内核尺寸仅为6KB)、OpenCPU架构(MCU和通讯模组二合一,降低终端装备巨细和成本)、端云互通组件完整(SDK端云互通组件预集成了全套IoT互联互通协议栈,快速上云)等优点,便于物联网开发者使用。

详细到基础内核(LiteOS kernel)上,包罗可以单独运行的义务治理、内存治理、时间治理、通讯机制、中止治理、行列治理、事宜治理、定时器等操作系统基础组件,支持超小内核的裁剪和低功耗性子。

LiteOS kernel的结构

操作系统系列(四):物联网时代先行者——轻量级IoT操作系统

                                                                                                                   泉源:官网信息

AliOS Things

由阿里云开发的YunOS在手机端营业受挫后,转向物联网,因此有了AliOS和AliOS Things这两款延伸。AliOS向车载偏向生长,AliOS Things 在裁剪优化后,则向轻量化低功耗偏向生长。作为一款轻量级物联网操作系统,其可实现ROM<2KB, RAM<1KB,应用在智能家居、智慧都会、工业等偏向上。

从其文档提供的分层架构图来看,其焦点组件由一个轻量级的实时内核、低功耗引擎、毗邻协议,还包罗平安组件、uMesh 自组网、语音交互、多变升级云毗邻 SDK。AliOS Things在底层做到了对主流IoT芯片的优化支持和硬件抽象层等有利于差别硬件间移植的特征。在端侧装备和云端的信息传输上,AliOS Things提供的Linke Edge等云端联动组件同样支持IoT产物快速上云。

AliOS Things手艺架构框图

操作系统系列(四):物联网时代先行者——轻量级IoT操作系统

                                                                                                                     泉源:阿里云网站

RT-Thread OS

RT-Thread是国产领先的物联网操作系统,开源项目始于2006年。因其开放、免费、成熟和可靠的特点,已经获得亿台装备的装机认证,在工业、新能源、电力,消费,家电,交通等各行业被普遍使用。这也是本文所举案例中唯一一个还没有获得巨头靠山的操作系统。

RT-Thread操作系统架构

操作系统系列(四):物联网时代先行者——轻量级IoT操作系统

                                                                                                                 泉源:RTT官方文档

RT-Thread 内核包罗内核系统中工具的实现,例如多线程及其调剂、信号量、邮箱、新闻行列、内存治理、定时器等;libcpu/BSP(芯片移植相关文件 / 板级支持包)与硬件密切相关,由外设驱动和 CPU 移植组成。

 RT-Thread 内核之上是组件和服务层,例如虚拟文件系统、FinSH 命令行界面、网络框架、装备框架等。这一块接纳模块化设计,做到组件内部高内聚,组件之间低耦合。

组件与服务层之上是RT-Thread 软件包,这一块提供面向差别应用领域的通用软件组件,开发者可自行选择。RT-Thread现在支持的软件包有60+,包罗物联网、脚本语言、多媒体、外设相关等。

据官方披露的信息,RT-Thread焦点已经被应用到了累积4亿台装备上。

本文经授权公布,版权归原作者所有;内容为作者自力看法,不代表本站态度。如需转载请联系原作者。

声明: 本文由入驻基智地平台的作者撰写,观点仅代表作者本人,不代表基智地立场;基智地发布此信息的目的在于传播更多信息,与本站立场无关。