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

目录

一、物联网操作系统概述

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

相关推荐
门思科技19 小时前
工业物联网低成本改造:门思科技LoRaWAN全链路解决方案
科技·物联网
Z***25801 天前
HarmonyOS在物联网场景的应用
物联网·华为·harmonyos
我先去打把游戏先1 天前
ESP32学习笔记(基于IDF):基于OneNet的ESP32的OTA功能
笔记·物联网·学习·云计算·iphone·aws
t***L2661 天前
Python物联网案例
物联网
jiayong231 天前
多子系统架构下的Nginx部署策略与最佳实践
运维·nginx·系统架构
晓风残月淡1 天前
系统架构设计基础知识:软件架构风格
系统架构·软件架构风格
坏孩子的诺亚方舟1 天前
FPGA系统架构设计实践8_复位参考设计
fpga开发·系统架构·复位
一起学开源2 天前
实战总结:BACnet/IP 跨网段通讯的两种解决方案(BBMD 与 Foreign Device)
运维·网络·物联网·bacnet·网络协议·tcp/ip
编码追梦人2 天前
ESP32 物联网宠物喂食器:实现远程智能投喂的完整方案
物联网·宠物
wotaifuzao2 天前
(七)深入探讨BLE MAC 地址的隐私博弈:技术与隐私的较量
经验分享·物联网·macos·蓝牙·射频工程·ble