写点什么

物联网操作系统介绍

  • 2020-03-10
  • 本文字数:2117 字

    阅读完需:约 7 分钟

物联网操作系统介绍

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

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-03-10 14:501773

评论

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

OpenHarmony移植案例与原理:如何适配服务启动引导部件bootstrap_lite

华为云开发者联盟

OpenHarmony 移植 bootstrap_lite startup 系统服务

如何打造一个能自动回复的钉钉机器人

老表

Python 机器人 Linxu 跟老表学云服务器

大厂偏爱的Agent技术究竟是个啥

捉虫大师

架构 agent

VIPKID基于Karmada的容器PaaS平台落地实践

华为云原生团队

开源 Kubernetes k8s多集群管理 混合云 分布式云

UMEM:友盟统计自定义事件多应用一键同步 & 批处理工具

SamgeApp

Docker Vue 友盟助手 友盟自定义事件批处理 友盟统计

基于CC2530设计的智能风扇

DS小龙哥

2月月更 智能风扇

上海市宝山区委书记陈杰一行参访旺链科技

旺链科技

区块链 产业区块链 Vone新闻

『The ShardingSphere Global Echo』Vol.4

SphereEx

数据库 开源 中间件 ShardingSphere SphereEx

Pulsar 职位广场 | 腾讯、华为云、虾皮、众安保险、StreamNative 等多个热招岗位

Apache Pulsar

开源 架构 云原生 招聘 Apache Pulsar

学生管理系统的架构文档

卡西毛豆静爸

「架构实战营」

开源| 直播推拉流2.0升级了什么

anyRTC开发者

开源 音视频 屏幕共享 视频直播 美颜滤镜

Python 中的数组哪去了?

宇宙之一粟

Python 数组 2月月更

Nginx跨域解决配置示例

nginx 跨域

鲲鹏DevKit & BoostKit直播解密:如何“做开发者的开发者”

科技热闻

[Python]第一章(建议收藏)

謓泽

Python 2月月更

C++异常处理机制

正向成长

c++ 异常处理

好用不卡,这些插件和配置让你的 Webstorm 更牛逼!

前端下午茶

前端 工具 webstorm

用简单例子带你了解联合索引查询原理及生效规则

华为云开发者联盟

sql 索引 查询 联合索引

盘一盘常见的6种索引失效情况

华为云开发者联盟

MySQL 索引 字符串 查询 索引失效

凡泰极客成为W3C成员并加入MiniApps工作组,将积极参与小程序快应用技术标准化进程

FinClip

小程序

eBPF 完美搭档:连接云原生网络的 Cilium

火山引擎边缘云

边缘计算 ebpf 云原生网络 cllium

数据库读写分离如何保证主从一致性?

蜜糖的代码注释

MySQL 数据库 2月月更

学生管理系统的架构设计

凌波微步

「架构实战营」

学生管理系统架构设计文档

阿卷

架构实战营

关于MVVM和MVC,面试看这篇就够了

山河已无恙

mvc 全栈 MVVM 2月月更

工作想法小计(2):2/14 - 2/18

非晓为骁

个人成长

十年所学,梦想终至,不负时光 | 《云端架构》新书首推发布,来自极度努力的吕校长

博文视点Broadview

CSS实现阮大佬博文的阅读进度功能

战场小包

CSS css3 前端 2月月更

云原生时代,如何保证容器镜像安全?

极狐GitLab

DevSecOps 镜像安全 极狐GitLab

[Python]介绍

謓泽

Python 2月月更

面试突击25:sleep和wait有什么区别?

王磊

java面试

物联网操作系统介绍_服务革新_华为云开发者联盟_InfoQ精选文章