物联网软件需求

物联网设备的多样性、使用场景可能与传统嵌入式设备存在较大差异,催生了很多对物联网操作系统的新需求,核心需求主要有以下几点:

  • 轻量级

物联网端设备数量巨大,对硬件成本十分敏感,物联网操作系统应该要轻量级,资源开销要少,可以在价格低廉、资源紧张的MCU上运行

  • 跨平台

物联网操作系统除了要支持最常见的Cortex-M体系结构外,还要带有驱动框架以屏蔽不同硬件平台的差异,实现应用跨平台

  • 高度可伸缩

从小型的传感器节点到个人穿戴设备、智慧家电等都可以使用同一套物联网操作系统来实现,在功能足够丰富的同时,做到高度可伸缩可裁减,满足不同应用场景对底层软件的需求

  • 强安全

近年来物联网大规模化应用越来越多,针对物联网的攻击也越来越多,物联网操作系统应能做到信息安全和系统安全

  • OTA升级

物联网端设备在运营过程中,功能不断调整、增加,发现的问题不断修复,物联网操作系统应支持FOTA(空中升级)技术,升级做到快速并安全,支持镜像备份和回滚

  • 低功耗

有些物联网端设备使用电池供电,对低功耗有较高要求。物联网操作系统应具备优秀的电源管理框架,充分发挥MCU的电源管理、休眠低功耗特性,满足电池供电应用场景节能需求,降低应用在处理低功耗问题上的难度

  • 开发者友好

物联网操作系统应对开发者友好,降低开发者学习、使用、解BUG成本,还需要对测试、量产环节友好,实现产品快速上市

MS-RTOS 安全物联网操作系统特点

MS-RTOS(Micro Safe RTOS)是翼辉信息全新设计的一款面向未来物联网需求的新一代小型物联网操作系统,其显著的特点是开创性地在没有 MMU 和资源受限的 MCU(如Cortex-M3)上也能支持多进程与动态装载技术,使得应用与系统能分离开发、独立升级;MS-RTOS 支持内核空间内存保护(应用程序通过 syscall 访问内核),使得内核有着非常高的安全性。MS-RTOS 在提供足够丰富功能的同时,保持了高效简洁的实现,对 ROM、RAM 消耗极低,特别适用于对硬件成本敏感、安全性要求特别高的产品。与此同时翼辉信息提供了一套功能强大的集成开发环境 IDE,给开发者在各种开发阶段提供了强而有力的支撑。

MS-RTOS主要有以下几个特点:

  • 支持动态装载APP和多APP运行

MS-RTOS支持动态装载APP和支持多APP运行,使得应用程序能与系统、驱动程序分离开发、独立升级,实现了软件定义设备的理想,使物联网设备从功能设备转变为智能设备,类似于功能手机到智能手机的转变。

MS-RTOS的XIP-ANYWHERE动态装载技术,无需装载APP镜像到 RAM 中执行,大大降低了对RAM的需求,同时片内FLASH XIP运行速度比RAM更快,使得MCU上的动态装载APP变得真正实用。同时MS-RTOS的应用程序编译时无需指定运行地址,一次编译,处处运行,使用更灵活。

  • 强安全

安全性方面,MS-RTOS在众多RTOS中独树一帜,达到了前所未有的高度。

  • 内核保护

MS-RTOS的APP进程工作在 CPU 用户态,只能通过系统调用(syscall)进入内核, 保护内核不被进程破坏。

  • 进程地址隔离

MS-RTOS利用 MPU 或MMU做到进程地址空间相互隔离,锁定应用问题的作用范围,避免应用问题传染。

  • APP镜像数字签名

MS-RTOS支持对APP镜像数字签名,有效阻止了未经签名或被恶意篡改或伪造的 APP 在目标系统(如智能表计设备)上运行,有效保证了目标系统的安全性。

  • 掉电安全文件系统

MS-RTOS针对各种储存介质均有掉电安全文件系统解决方案,保障设备在意外断电时文件系统的安全,同时MS-RTOS FLASH文件系统解决方案支持磨损平衡,有效提高FLASH使用寿命。

  • 健康监控

MS-RTOS支持设备健康监控,在驱动或应用出现问题时,能储存崩溃现场信息供后续上报云端进行分析,并及时重启系统或应用。

  • APP权限可配置

MS-RTOS支持APP权限配置,限定APP能访问哪些设备、可以进行哪些系统敏感操作、可以使用多少个内核资源等,有效保证系统安全。

  • 轻量级

MS-RTOS使用模块化设计,并且高度可配置,在内核全功能配置时,只占用50KB FLASH空间,最小配置时FLASH空间占用低至8KB。

  1. 标准配置:FLASH:50KB,RAM:32KB
  2. 最小配置:FLASH:8KB,RAM:4KB
  • 硬实时

MS-RTOS是一款硬实时的操作系统,内核关键算法时间复杂度均是O(1):

  1. ns 级中断响应延迟,支持中断嵌套
  2. 基于优先级抢占式调度,调度时间确定
  3. 支持同优先级线程,时间片轮转 RR 和先来先服务 FIFO 调度
  4. 互斥量支持优先级继承,防止优先级翻转
  5. 进程切换零损耗
  6. 支持实时内存分配
  • 低功耗

MS-RTOS实现了一个功能完整的电源管理框架,帮助应用轻松实现设备低功耗,满足电池供电应用场景节能需求:

  1. 支持 Tick-less 技术,减少 Tick 中断开销
  2. 支持CPU和设备调整频率运行
  3. 设备低功耗框架
  4. 系统空闲时 CPU 进入深度睡眠
  • OTA升级

MS-RTOS支持 OTA升级技术,能支持APP与系统独立升级,相比传统捆绑模式,升级粒度更小、速度更快,此外MS-RTOS还提供了差分包升级的支持,节约通信流量的同时做到实现快速升级。

  • 功能丰富

MS-RTOS提供了完善的C库和C++支持及BSD/socket接口,可移植大量的开源或商业中间件,翼辉也通过开源社区www.github.com/ms-rtos 提供了大量的开源中间件支持,有效满足高端智能设备的中间件需求:

类型

中间件

图片

libpng, libjpeg, stb, tjpgd, qrcode

音频

mp3, flac, aac, wav

AI推理

cmsis-nn

网络

lwip_net, esp_at_net, goahead, netutils

无线

lorawan, nimble, zigbee, openthread

压缩

zlib

文件系统

fatfs, uffs, yaffs2, littlefs, edgefs

GUI

nxp_emwin, st_emwin, st_touchgfx, littlevgl, awtk, guix, u8g2

格式

c-capnproto, iniparser, cjson, jsmn, tinycbor,protobuf-c, nanopb,

http_parser, nghttp2

脚本引擎

jerryscript, lua

USB

st_usb_stack, nxp_usb_stack

安全

tinycrypt, tinydtls, mbedtls

物联网

paho-mqtt-embedded-c, paho-mqtt-sn-embedded-c,

libcoap, microcoap,liblwm2m, mongoose,sddc

数据库

tkvdb, sqlite3

其它

coremark, fcb2, freemodbus, openamp

  • 跨平台、支持众多芯片

MS-RTOS支持在主流的Cortex-M和C-SKY体系结构CPU上运行,同时MS-RTOS针对不同类型的设备都提供了驱动框架,有效屏蔽不同硬件平台的差异和简化驱动开发难度,实现应用跨平台。目前MS-RTOS支持众多半导体厂商的主流芯片:

厂商

CPU核心

CPU型号

ST

Cortex-M0

STM32F0系列

Cortex-M3

STM32F1系列

Cortex-M4

STM32F4系列

Cortex-M7

STM32F7系列

Cortex-M7

STM32H7系列

Cortex-M33

STM32L5系列

NXP

Cortex-M7

i.MX RT 10xx系列

GigaDevice

Cortex-M23

GD32E23x系列

Cortex-M4

GD32F30x系列

Cortex-M4

GD32F4xx系列

BEIJING SMARTCHIP MICROELECTRONICSS

Cortex-M4

SCM4XX系列

Cortex-M4

SCCB9001xx系列

CSG

C-SKY 807

FUXI-M 807

解决应用痛点

传统的小型实时操作系统或物联网操作系统,使用起来存在较多较大的痛点,主要有以下几个:

  • 安全性差

传统的RTOS,如FreeRTOS、uCOS,不支持进程和内核保护,应用工作在CPU内核态,没有真正利用CPU的MPU或MMU,没有完善的CPU异常处理逻辑,应用有问题时易造成死机或重启,并且难以分析问题原因

  • OTA升级慢

传统的RTOS,由于不支持动态装载,应用和内核与驱动只能捆绑在一起链接,生成的镜像比较大,修改一行代码都需要整体升级,也不支持差分升级,OTA升级速度慢

  • 低功耗实现复杂

传统的RTOS,没有完整的电源管理框架,只有Tick-less技术难以做到很好的低功耗效果,很难满足电池供电场景节能需求

  • 系统平台不统一

传统RTOS,内核功能和中间件都比较少,只能满足简单设备的底层软件需求,难以支撑复杂智能设备的底层软件需求,造成不同产品线操作系统平台不统一

  • 研发难度大、周期长

传统的RTOS,不提供对应的集成开发环境、测试工具,没有好用的问题分析工具和安全子系统,造成出现问题时分析极为困难,加上功能薄弱,造成研发难度大、周期长

MS-RTOS设计目标就是解决以上痛点。

典型应用

  1. 智能表计
  2. 汽车电子
  3. 医疗仪器
  4. 智能家居、智能家电
  5. 智能穿戴设备

MS-RTOS --- 产品特性相关推荐

  1. 随想录(安全关键系统和rtos)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] safety critical system,国内一般翻译成安全关键系统.安全,就是说系统必须 ...

  2. RTOS原理与实现02:基本任务切换实现

    目录 1. 任务定义与切换原理 1.1 任务是什么 1.1.1 任务的外观 1.1.2 任务的内在 1.2 任务切换原理 1.2.1 任务切换的本质 1.2.2 要保存哪些任务运行状态 1.2.3 任 ...

  3. 【经验分享】突然我的SM.MS的图床没法访问了(内附解决方法)

    [经验分享]突然我的SM.MS的图床没法访问了(内附解决方法) 一大早写文章,发现Markdown里的图片全部都不能成功加载了,这个的确挺头疼的! 文章目录 1 说一说现象 2 简单排查一下 3 查找 ...

  4. 单片机嵌入式实时操作系统RTOS---eOS学习入门级RTOS(原创)

    笔者刚入门学习STM32的时候就接触了uCOSII,它的多任务让我眼前一亮:原来程序还可以这么写!它让很多冲突的代码都能各自运行,在一个单片机上实现了多个单片机共同运行的效果.但是当开始真正去学习它时 ...

  5. RTOS与linux区别

    一句话解释: linux是分时系统,不过可以通过配置内核改成实时. 嵌入式Linux 系统是在原来Linux的发行版本之上进行了优化和改进的,用于嵌入式的移动终端等设备的嵌入式Linux系统现在基本上 ...

  6. RTOS系统与Linux系统的区别

    RTOS是实时操作系统 Linux是时分系统,不过可以通过配置内核改成实时系统 实时操作系统 英文称Real Time Operating System,简称RTOS. 1.实时操作系统定义 实时操作 ...

  7. 如何将RTOS系统启动时间做到“毫秒级”?AliOS Things是这样做的

    1.背景     随着人工智能的迅速发展,智能家居的时代已经到来,除了智能安全防盗门.智能门锁,智能音箱等市场快速增长外,智能猫眼行业异军突起,成为智能家居板块的重要品类.房门作为每个房子的入口,其智 ...

  8. NXP S32K144学习系列3----基于FreeRTOS进行多个ms级任务的创建

    其实拿到开发板的那一刻我就想好了,这次不从外设开始学习,而是先要把FreeRTOS移植好再把外设一个一个的学起来.而把FreeRTOS移植到S32K144的第一步就是创建几个周期性任务. 首先先大致介 ...

  9. 51 rtos系统 : MCUsystem 介绍 -- 基于消息队列

    一个基于消息循环的51操作系统,这个有点象VC的风格,大家看McuSystem.rar 看,这个不错的. ReadMe.txt 默认路径: D:\MCU51\ Version:MS1.01-2003. ...

  10. RTOS诊断和错误检查

    RTOS诊断和错误检查 RTOS diagnostics and error checking 查看RTOS显示系列 错误处理不太可能是任何用于嵌入式系统应用程序的操作系统的主要功能.这是资源限制的必 ...

最新文章

  1. Phalcon 訪问控制列表 ACL(Access Control Lists ACL)
  2. 数据结构与算法---笔记
  3. Highcharts 宽度溢出容器
  4. 如何顺势用优势找到机会赚钱?
  5. Hive--sql中的窗口函数
  6. WIN7系统下Mapgis6.7常见的两个问题及解决办法
  7. 【仿真】Carla介绍与使用 [1] (附代码手把手讲解)
  8. 三种形式全排列——指数型、排列型、组合型类型题目汇总
  9. 流媒体后视镜方案关键技术--电子防眩目
  10. 【英语语法】定语从句
  11. 技能提升之word中如何优雅的输入根号3
  12. 五大经典算法之四贪心算法
  13. Linux下磁盘常见错误分析与检测工具使用
  14. C语言中fscanf和fprintf函数的使用
  15. 华清远见-创客学院-专业:嵌入式人工智能开发 C++ 课程(包含天猫精灵)
  16. 计算机网络摩尔定律芯片运算速度,在计算机网络领域的“摩尔定律”,芯片的运算速度每48个月翻一番...
  17. scratch做简单跑酷游戏_育儿这样做,宝宝更聪明,简单又实用的家庭感统训练游戏推荐...
  18. p2p网贷系统即将上线
  19. tdk怎么设置_如何设置网站TDK?
  20. 简易个人信息登记系统(基于广义表,单链表)

热门文章

  1. Spring @Aspect简单使用
  2. 【回溯法】机器零件加工-最优加工顺序
  3. spring boot + vue 前后端下载文件文件
  4. 关于Dlink和ADSL不和谐的解决
  5. python之转义字符
  6. IDEA 安装与破解(亲测有效)
  7. 参考file-convert-util工具,实现doc,docx,html,md,pdf,png转换
  8. insurgency服务器修改,insurgency指令大全 | 手游网游页游攻略大全
  9. Selenium自动化下载文件Firefox配置教程
  10. Silver Efex Pro 2 for Mac(黑白处理调试滤镜)