首页 > 编程知识 正文

物联网实例(三种常用的物联网系统结构)

时间:2023-05-06 02:57:59 阅读:74304 作者:3670

物联网操作系统是在物联网设备上运行的提供物联网能力的操作系统,其核心是将各种物体接入互联网,提供数据通信能力。

一般操作系统按其应用场景划分,主要分为桌面操作系统、移动操作系统、物联网操作系统,各领域的主要操作系统如下图所示。

迄今为止,桌面操作系统和移动操作系统目前已形成市场占有率相对稳定的结构。 相比之下,物联网操作系统领域的碎片化问题十分严重,一些操作系统并不占绝对优势,而是处于“百花齐放、百家争鸣”的阶段。

大多数物联网操作系统是从嵌入式操作系统(如uC/OS、FreeRTOS等)发展而来的,诸如RT Linux、Android Things等Linux、Android Things等

简要介绍国内外知名的物联网操作系统。

1. uC/OS

如下图所示,uC/OS于1992年正式发布,1998年发布了uC/OS-II版本。 最新版本是uC/OS-III,国内流行的是uC/OS-II。 除了任务管理、时间管理、内存管理、通信和同步等操作系统的基本功能外,uC/OS还提供了TCP/IP、USB、CAN、Modbus等功能组件,但网络功能相对较弱。 uC/OS采用开源、非免费的战略,在商业上使用需要许可证费用。 从国内发展进程来看,2010年是uC/OS操作系统的鼎盛时期,可能是由于“开源不是免费的”战略,2010年以后迅速被FreeRTOS赶超。 uC/OS于2016年被Silicon Labs公司收购。

2. FreeRTOS

如下图所示,FreeRTOS嵌入式操作系统诞生于2003年,采用MIT License,开源、免费,适用于任何业务或非业务场景。 自arm 2004年推出Cotex-M3系列体系结构的IP后,TI、ST、NXP、Atmel等海外芯片公司在2006年左右陆续推出基于Cotex-M3的MCU,这些芯片默认为自由释放这直接推动了自由射频(FreeRTOS )在2010年左右的自由射频(FreeRTOS )于2016年被亚马逊公司正式收购,亚马逊将其AWS服务嵌入自由射频系统,并于2017年实现无线连接、安全性、OTA等功能

亚马逊自由RTOS内核具有简单、重量轻、可靠性、可移植性等诸多优点,拥有广泛的用户基础,已经在很多行业得到商业应用。 Amazon FreeRTOS的版本提供了与AWS相关的软件库,用户可以将物联网功能集成到设备中。 提供的软件库还支持TLS V1.2协议,可帮助设备安全地连接到云。

此外,Amazon FreeRTOS设备可以直接连接到云服务(如AWS IoT Core ),也可以连接到本地边缘服务(如AWS绿色玻璃)。

3. LiteOS操作系统

LiteOS操作系统是华为公司推出的轻型物联网操作系统,目前已适合多个通用MCU和NB-IoT集成开发工具包。 面向IoT领域构建的轻量级互联网操作系统,符合BSD-3开源许可协议,可广泛用于智能家居、个人穿戴、电信、城市公共服务、制造业等领域。

4 .三叉戟

RT-Thread诞生于2006年,是开源、中立、社区化发展起来的物联网操作系统,主要用c语言编写,具有通俗易懂、易于移植的特性。

RT-Thread有完整版本和Nano版本,是一种用于资源有限的微控制器(MCU )系统的简单易用的工具,只需要3KB Flash、1.2KB RAM的内存资源此外,资源相对丰富的物联网设备使用RT-Thread全版本,结合在线软件包管理工具、系统配置工具实现直观、快速的模块化裁剪,无缝部署丰富的软件包功能

5. Linux

通常所说的Linux通常是指Linux内核,但内核并不是完整的操作系统。 实际上,Linux是一个开源、自由传播的Unix类操作系统。 支持基于POSIX的多用户、多任务、多线程和多CPU内核的操作系统。 常见的Linux系统包括Linux内核、GNU项目组件和APP应用程序(数据库、网络、图形接口、音频等)。

Linux内核最初是由Linus Torvalds在赫尔辛基大学读书时出于个人爱好而编写的,当时他觉得教学用的迷你版UNIX操作系统Minix太难用了,于是决定自己开发一个操作系统。自从Linus Torvalds于1991年底发布了Linux内核的0.02版本之后,全世界的开源爱好者们共同推进着Linux系统的发展。

Linux的标志和吉祥物为一只名叫Tux的企鹅-Torvalds' Unix。

常见的Linux的系统结构如下图所示。

 

 

Linux从诞生到现在经过30多年的发展,在服务器、桌面操作系统、嵌入式、云计算和大数据等领域占据了广阔的市场。据统计,在全球服务器市场,Linux已经占有超过75%的市场份额。在桌面操作系统领域,基于Linux的比较有代表性的是Ubuntu操作系统,虽然其普及程度还远落后于Windows,但满足日常办公及娱乐需求是没有问题的。Android系统(Google推出的移动端操作性系统)底层也是基于Linux修改而来。

除了在服务器、大数据、人工智能等领域的广泛应用,在国内物联网操作系统被广泛应用之前,Linux是物联网应用中使用最广泛的操作系统。Linux系统一般都比较大,为了适应物联网领域的应用场景,很多开源组织和商业公司对Linux进行了很多的裁剪,RT Linux和uClinux是两个比较有代表性的基于Linux的物联网操作系统:

RT Linux(Real Time Linux)

它最初是由新墨西哥矿业及科技学院的V. Yodaiken开发,现在已被WindRiver公司收购。RT Linux是将Linux的内核代码做了一些修改,将Linux本身的任务以及Linux内核作为优先级很低的任务,而将负责物联网应用的实时任务作为优先级最高的任务来执行。这样就可以既享受到Linux丰富的软硬件生态的便利性,也能满足业务层对实时性的需求。

uClinux(Micro Control Linux)

uClinux是Lineo公司的主打产品,同时也是开放源码的嵌入式Linux的典范之作。它是从Linux 2.0/2.4内核派生而来,沿袭了Linux的绝大部分特性。它是专门针对没有MMU(内存管理单元)的CPU,并且为嵌入式系统做了许多小型化的工作。它通常用于具有很少内存或Flash的嵌入式操作系统。在GNU通用许可证的保证下,运行uClinux操作系统的用户可以使用几乎所有的Linux API函数。由于经过了裁剪和优化,它形成了一个高度优化,代码紧凑的嵌入式Linux。它具有体积小、稳定、良好的移植性、优秀的网络功能、完备的对各种文件系统的支持以及丰富的API函数等优点。

6. AliOS Things

AliOS Things 是阿里巴巴公司2017年推出的面向物联网领域的轻量级操作系统,致力于搭建云端一体化IoT基础设施,具备极致性能、极简开发、云端一体、丰富组件、安全防护等关键能力,并支持终端设备连接到阿里云物联网平台。目前在智能家居、智慧城市、智能制造、新出行等领域大量使用。从诞生之初到现在为止,其主要经历了如下图所示的几个阶段。

2017年AliOS Things V1.1版本正式发布,除了rhino内核外,还集成了常用的MQTT/CoAP等非常适合物联网行业的协议和TEE安全组件,所以AliOS Things天生就是为物联网行业而生的。2019年2月份,AliOS Things开始支持RISC-V体系结构的芯片,并且增加了电源管理功能,为低功耗应用场景打下了基础;针对物联网系统升级慢的问题设计了OTA差分升级的方案大大提高了系统升级的效率。2020年4月份,V3.1版本正式发布,在这版本上设计了应用程序的开发框架,并且引入了组件式开发模型,组件中比较值得提到的是用于实时传输的RTP协议及可以防止HTTP网络劫持的HTTPDNS协议,为物联网的安全性提升了一个等级。2021年5月份,AliOS Things正式发布V3.3版本,在这个版本中真正做到了基于弹性内核的积木式开发方案,并且支持Python和JavaScript的轻应用开发新模式。AliOS Things采用分层体系结构和组件式结构,如下图所示。

AliOS Things轻应用的开发模式自推出以来就受到开发者的极大支持,目前在智慧家庭、智能工业、智慧农业等行业有了广泛的应用,真正做到了“JS/Python也能轻松开发智能硬件”。

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。