【物联网】物联网操作系统简介

目录

一、物联网操作系统概述

1.1内存占用

[1.2 内存管理](#1.2 内存管理)

二、物联网操作系统构成

三、物联网操作系统关键特性

[3.1 调度方式](#3.1 调度方式)

[3.2 I/O操作方式](#3.2 I/O操作方式)

[3.3 网络服务](#3.3 网络服务)

[3.3.1 TinyOS网络协议栈](#3.3.1 TinyOS网络协议栈)

[3.3.2 LiteOS网络协议栈](#3.3.2 LiteOS网络协议栈)


一、物联网操作系统概述

物联网操作系统是支撑物联网大规模发展的最核心软件,由操作系统内核、外围功能组件、物联网协同框架、通用智能引擎、集成开发环境等几个大的子系统组成。

物联网操作系统屏蔽了物联网碎片化的特征,提供统一的编程接口,降低了物联网应用开发的成本和时间,为物联网统一管理奠定了基础。

物联网操作系统与传统操作系统在内存占用和内存管理存在差别区别

1.1内存占用

物联网操作系统运行在资源受限的节点上,内存占用与传统操作系统相比较小,一般只有几十KB

1.2 内存管理

传统操作系统一般运行在具有内存管理单元(MMU)的设备上,能够提供地址翻译和内存保护功能。物联网操作系统则因设备而异,当运行在缺乏MMU的设备上时,一般很难提供地址翻译和内存保护功能,当运行在具备MMU的设备上时,可以提供轻量级的地址翻译和内存保护功能。

二、物联网操作系统构成

  1. 任务调度------抢占、时间片轮转、优先级、FIFO。
  2. 动态加载------需要的时候进行加载。
  3. 内存管理------静态分配、动态分配。
  4. 资源抽象------文件->IO设备,进程->CPU。
  5. 传感接口------将数据传递至MCU。
  6. 网络协议栈------BLE、LwIP、LoRaWAN。

三、物联网操作系统关键特性

3.1 调度方式

现有的调度方式主要有:抢占式、非抢占式、协同式和时间片轮转。它的区别点主要在于使用堆栈的个数

抢占式:需要切换线程上下文,多个堆栈(、时间片轮转)

非抢占式:无需切换线程上下文,单个堆栈

协同式:需要切换线程上下文,一般多个堆栈

时间片轮转:需要切换线程上下文,多个堆栈

3.2 I/O操作方式

I/O操作方式的一般分为阻塞、分阶段两种类型。它们的具体实现区别如下图所示。

由此,它们的优缺点可以归结为如下几点。

3.3 网络服务

网络服务是一种服务导向架构的技术,它通过标准的网络协议提供服务,目的是保证不同平台的应用服务可以互操作。

类别主要分为两种,一种是传统无线传感网的网络协议,另一种是现代物联网的网络协议。

3.3.1 TinyOS网络协议栈

其中CTP-- 支持many-to-one的数据传输,RPL-- 支持many-to-one、one-to-many、one-to-one的数据传输,6LoWPAN-- 实现IPv6的地址压缩、TCP/UDP的包头压缩、ICMP包头压缩

3.3.2 LiteOS网络协议栈

LiteOS自带BLE和Zigbee协议栈,LiteOS支持6LoWPAN over 802.15.4 和6LoWPAN over BT

相关推荐
郑州光合科技余经理3 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
古译汉书4 天前
【IoT死磕系列】Day 7:只传8字节怎么控机械臂?学习工业控制 CANopen 的“对象字典”(附企业级源码)
数据结构·stm32·物联网·http
TDengine (老段)4 天前
TDengine IDMP 数据可视化——散点图
大数据·数据库·物联网·信息可视化·时序数据库·tdengine·涛思数据
Lupino4 天前
从逻辑“脑裂”到 AI 重构:不到 2 美金解决物联网电位反转难题
python·物联网
王九思4 天前
Thrift Server 介绍
大数据·系统架构·运维开发
xiaozhazha_4 天前
技术选型深度解析:企业级AI智能办公系统架构设计与“人机协同”实践——以快鹭为例
人工智能·系统架构
脚后跟4 天前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
C澒4 天前
SLDS 自营物流系统:Pickup 揽收全流程
前端·架构·系统架构·教育电商·交通物流
极客小张4 天前
基于STM32的智能水质监测与远程预警系统设计与实现
c语言·python·stm32·单片机·嵌入式硬件·物联网
csg11074 天前
PIC单片机驱动时钟芯片DS1302(附代码)
单片机·嵌入式硬件·物联网