写点什么

物联网操作系统介绍

  • 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:501915

评论

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

从Integer开始阅读JDK源码

指尖流逝

Java jdk源码

20 大类,100+ 网络副业兼职平台汇总推荐

一尘观世界

程序员 自由职业 副业 赚钱

Nacos 1.1.4 与微服务的实践经验记录

itfinally

Java 微服务 nacos

Kafka系列第4篇:消息发送时,网络“偷偷”帮忙做的那点事儿

z小赵

kafka 推荐 实时计算

KubeFATE: 用云原生技术赋能联邦学习(二)

亨利笔记

Kubernetes 云原生 k8s FATE KUBEFATE

记录自有意义

彭宏豪95

人生 写作 感悟 记录

技术人员加薪二三事

南方

管理 职场 技术管理 加薪 劈空掌

认识数据产品经理(一 数据产品经理的细分)

马踏飞机747

大数据 数据中台 数据分析 产品经理

游戏夜读 | 2020周记(4.3-4.10)

game1night

职场“35岁现象”:焦虑 or 出路?是时候说出真相了!

狂师

职场 成长 软件测试 测试 软件开发

Dubbo 概述

会飞的猪

Spring Cloud概述

会飞的猪

聊聊测试工程师的价值

软件测试 质量 测试工程师产出 测试的价值

JAVA中Base64加密与解密

Howe

Java base64 加密解密

动态规划问题的思路和技巧

Kenn

算法 动态规划

Redis学习笔记(概述)

编程随想曲

redis

为AndroidApk添加系统级签名

Howe

Java android

Spring中的测试类~简洁方便

程序员的时光

spring

iOS Release 版本开启调试功能

liu_liu

ios release 调试

为什么每个软件人都要懂点系统架构?

刘华Kenneth

架构 DevOps 高可用 敏捷 高并发

程序员陪娃漫画系列——上学路上

孙苏勇

程序员 生活 陪伴 漫画

动画设计的十个原则

养牛致富带头人

设计 动画

制作Unknown Pleasures效果图的3种方法

张云金_GISer

设计 T恤 GIS 地图

如何梳理画出牛逼的、高大上的架构图?

狂师

程序员 企业架构 开发者 软件测试 软件开发

聊聊数据库原理和索引结构:1000万条数据优化后为什么能提升1500倍

牧码哥

MySQL 数据库 数据结构 性能优化 索引结构

找工作不得不知道的事

熊斌

认知提升 求职

我愿沉迷于学习,无法自拔(三)

孙瑜

深度思考 程序员 感悟

Java新技术:文字块

X.F

Java 编程语言

Java并发编程系列——锁顺序

孙苏勇

Java Java并发 并发编程 多线程

缓存的五种设计模式

Rayjun

缓存

Boyer-Moore 算法

Kenn

算法 数组 Boyer-Moore

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