写点什么

物联网操作系统介绍

2020 年 3 月 10 日

物联网操作系统介绍

摘要:本文主要对于目前物联网操作系统的定义以及主要特点进行了分析,最后介绍了几个常见的物联网操作系统。


1 简介


提到操作系统,可能首先想到的就是苹果操作系统,windows,Linux,Unix,Android,IOS 等,显然目前比较为人熟知的操作系统基本都是一些手机或者电脑端的操作系统。而随着互联网技术的不断发展,硬件的体积越来越小,物联网技术也迎来了爆棚式的发展。物理网不同于 互联网的不同在于后者更关注的是人与人的互联,而前者是更加强调人与物,物与物的连接,从而实现万物互联(IOT)。显然传统的嵌入式操作系统已然无法满足如今飞速发展的物联网的需求,因此针对物理网应用的操作系统也就应运而生。据统计全球物联网系统至少有几十种,甚至上百种。


2 什么是物理网操作系统


物联网大致可分为终端应用层、网络层(进一步分为网络接入层和核心层)、设备管理层、后台应用层等四个层次。其中最能体现物联网特征的,就是物联网的终端应用层。终端应用层由各种各样的传感器、协议转换网关、通信网关、智能终端、POS 机、智能卡等终端设备组成。这些终端大部分都是具备计算能力的微型计算机。物联网操作系统,就是运行在这些终端上,对终端进行控制和管理,并提供统一编程接口的操作系统软件。其实简单来讲物理网操作系统就是一种满足物联网需求的服务软件平台。


3 物联网操作系统的主要特点


3.1 内核尺寸伸缩性强以及整体架构的可扩展性


物联网操作系统的内核,应该设计成一个框架,这个框架定义了一些接口和规范,只要遵循这些接口和规范,就可以很容易的在操作系统内核上增加新的功能的新的硬件支持。简单来讲就是随着物联网应用功能需求的增多或减少,操作系统可以根据不同场景下的技术要求在原有简单内核基础之上进行扩展同时增加内核尺寸以实现对于上述需求的满足。


3.2 实时性


实时性要求系统能对外部事件在规定时间内进行处理,因为很多的关键性动作,必须在有限的时间内完成,否则将失去意义。如中断响应的实时性,一旦外部中断发生,操作系统必须在足够短的时间内响应中断并做出处理。其次线程或任务调度的实时性,一旦任务或线程所需的资源或进一步运行的条件准备就绪,必须能够马上得到调度。即任务调度需要支持抢占式优先级调度。


3.3 安全性和可靠性


安全性和可靠性是一个系统的基本需求,首先物联网应用环境具备自动化程度高、人为干预少的特点,这要求内核必须足够可靠,以支撑长时间的独立运行。其次操作系统的安全性和稳定性与物联网设备的安全性和稳定性息息相关。


3.4 低功耗


物联网设备本身具有体积小,独立性强等特点,因此电源的供电至关重要,因此需要系统实现低功耗节能省电,以支持足够的电源续航能力。如系统采用加入休眠模式实现节能。


4 几种常见的物联网操作系统


4.1 Huawei LiteOS


4.1.1 简介


LiteOS 是华为在 2015 年发布的一款面向 IoT 领域,遵循 BSD-3 开源许可协议、构建的的开源的轻量级的物联网操作系统,其大小为 10KB。具备零配置、自发现和自组网能力,让使用 LiteOS 的物联终端能够自动接入支持的网络。目前 LiteOS 可广泛应用于智能家居、个人穿戴、车联网、城市公共服务、制造业等领域,开发门槛低上手快、设备布置以及维护成本低、开发周期短使得硬件开发更为简单。


4.1.2 LiteOS 内核的特点


(1)超小内核。


(2)高实时性,高稳定性。


(3)低功耗。


(4)支持功能静态裁剪。


(5)支持动态加载、分散加载。


与正常的操作系统内核一样,包括任务管理、内存管理、时间管理、通信机制、中断管理、队列管理、事件管理、定时器等操作系统基础组件,可以单独运行,内核部分可以参考。


https://github.com/LiteOS/LiteOS/blob/master/doc/Huawei_LiteOS_Developer_Guide_zh.md



4.1.3 LiteOS SDK


LiteOS SDK 是 Huawei LiteOS 软件开发工具包(Software Development Kit),包括端云互通组件,FOTA,JS 引擎、传感器框架等内容。



4.2 RT-Thread


4.2.1 简介


RT-Thread 是一款完全由国内团队开发维护的嵌入式实时操作系统(RTOS),具有完全的自主知识产权。它是一个嵌入式实时多线程操作系统,基本属性之一是支持多任务,允许多个任务同时运行并不意味着处理器在同一时刻真地执行了多个任务。


4.2.2 特点


C 语言编写,浅显易懂,方便移植。它把面向对象的设计方法应用到实时系统设计中,使得代码风格优雅、架构清晰、系统模块化并且可裁剪性非常好。RT-Thread 体积小,成本低,功耗低、启动快速,除此以外 RT-Thread 还具有实时性高、占用资源小等特点,非常适用于各种资源受限(如成本、功耗限制等)的场合。架构图如下。



4.3 FreeRTOS


4.3.1 简介


FreeRTOS 创始人是 Richard Barry,它是一个迷你的实时操作系统内核。作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满足较小系统的需要。


4.3.2 特点


用户可配置内核功能、多平台的支持、目标代码小,简单易用强大的执行跟踪功能、堆栈溢出检测、没有限制的任务数量和任务优先级,多个任务可以分配相同的优先权、队列,二进制信号量,计数信号灯和递归通信和同步的任务、优先级继承。


5 总结


目前常用的操作系统有很多,每一款操作系统都具有各自的特点,但是大体功能较为相似,需要用户根据自己的需求进行选择。


2020 年 3 月 10 日 14:50498

评论

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

秋风到,ModelArts“ AI市场算法Fast-SCNN指南”秋膘贴起来

华为云开发者社区

AI 算法 开发 OBS modelarts

LAXCUS 大数据集群操作系统:一个分布式分时共享 E 级系统软件(六)

陈泽云

人工智能 大数据 算法

深入浅出node中间件原理

徐小夕

Java node.js 前端 中间件 数据可视化

三部门联合发言不得虚报直播销售额业绩:双十一何以刺激了用户的购买欲

石头IT视角

mPaaS 客户端问题排查之漫长的 3s 等待之谜

阿里云金融线TAM SRE专家服务团队

mPaaS

甲方日常 49

句子

工作 随笔杂谈 日常

架构师Week4总结

lggl

作业

再拔头筹,FusionInsight为华为云大数据打造硬实力

华为云开发者社区

大数据 数据仓库 数据湖 FusionInsight 华为云

第六周总结

balsamspear

极客大学架构师训练营

曾陷“数据风暴”危机的赛默飞世尔如何化险为夷的?

华为云开发者社区

数据库 大数据 云服务 华为云 RDS

护航11.11,如何筑牢安全防御系统?

京东科技开发者

云计算 云安全 DDoS

[译文]设计模式01 – 抽象工厂模式(附代码实例)

YoungZY

设计模式 译文

利用下班时间,我两星期完成了redis入门与进阶

小松漫步

数据库 redis

高交会第一天,高新技术成焦点

13530558032

链表交集问题与DataNode宕机HDFS处理时序

garlic

极客大学架构师训练营

[Pulsar 社区周报] 2020-10-31 ~ 2020-11-06

Apache Pulsar

大数据 开源

面试,到底在考察什么?

程序员架构进阶

面试 方法论

Serverless 是一种思想状态

donghui

Serverless

Pulsar Summit Asia 2020 | 场景案例论坛(上):多行业,多场景

Apache Pulsar

大数据 开源 Apache Pulsar

基于Fabric的性能测试与调优实践

华为云开发者社区

区块链 算法 测试 fabric 华为云

JVM真香系列:堆内存详解

田维常

Java JVM 堆栈 虚拟机

我就是增发、健身、养猫、社交通通拥有的锦鲤本鲤

脑极体

LAXCUS 大数据集群操作系统:一个分布式分时共享 E 级系统软件(七)

陈泽云

人工智能 大数据 算法

三千字轻松入门TensorFlow 2

计算机与AI

tensorflow 学习

第六周课后练习

balsamspear

极客大学架构师训练营

2020双11:看阿里背后的黑科技!

阿里云情报局

人工智能 云计算 大数据 运维 黑科技

氪信团队再夺冠!易观数科第四届OLAP算法大赛前三甲诞生!

易观大数据

数据库 算法 OLAP

极客大学 - 架构师训练营 第八周

9527

Oracle、NoSQL和NewSQL 数据库技术对比

VoltDB

数据库 大数据 数据分析 物联网

面经手册 · 第17篇《码农会锁,ReentrantLock之AQS原理分析和实践使用》

小傅哥

Java AQS CAS unsafe CLH

架构师Week4作业

lggl

作业

物联网操作系统介绍-InfoQ