仓库地址
GitHub:https://github.com/ms-rtos?from=timeline
GiTee:https://gitee.com/ms-rtos
一、MS-RTOS 简介
MS-RTOS(Micro Safe RTOS) 是翼辉信息全新设计的一款面向未来的安全实时操作系统,其最大的特点是开创性地在没有 MMU 和资源受限的 MCU(如Cortex-M3)上也能支持多进程与动态装载技术,使得应用与系统能分离开发、独立升级;MS-RTOS 支持内核空间内存保护(应用程序通过 syscall 访问内核),使得内核有着非常高的安全性。MS-RTOS 在提供足够丰富功能的同时,保持了高效简洁的实现,对 ROM、RAM 消耗极低,特别适用于对硬件成本敏感、安全性要求特别高的产品。与此同时翼辉信息提供了一套功能强大的集成开发环境 IDE,给开发者在各种开发阶段提供了强而有力的支撑。
二、MS-RTOS 架构图
三、MS-RTOS 特点
3.1 多进程
-
允许运行多个进程
-
进程用户代码工作在 CPU 用户态,通过系统调用(syscall)访问内核资源
-
利用 MPU 实现进程地址空间相互隔离
3.2 动态装载
-
驱动与应用程序分离开发
-
应用与系统独立升级
-
应用程序直接在 FLASH 中运行(无需加载到 RAM 执行,节约 RAM,运行速度更快)
-
应用程序编译时无需指定地址,一次编译,处处运行,使用更灵活
-
软件定义设备功能
3.3 安全
-
进程用户代码工作在 CPU 用户态,通过系统调用(syscall)进入内核, 保护内核不被进程破坏
-
利用 MPU 做到进程地址空间相互隔离, 进程影响范围最小化
-
掉电安全文件系统
-
全面接管 CPU 异常,支持自定义异常处理策略
-
支持 Dual Core Lock-Step 的 MCU,如 Cortex-M33
3.4 微型,低内存耗费
-
模块化设计,高度可配置
-
标准配置:FLASH:50KB,RAM:32KB
-
最小配置:FLASH:8KB,RAM:4KB
3.5 硬实时
-
ns 级中断响应延迟,支持中断嵌套
-
基于优先级抢占式调度,调度时间确定
-
支持同优先级线程,时间片轮转 RR 和先来先服务 FIFO 调度
-
互斥量支持优先级继承,防止优先级翻转
-
进程切换零损耗
3.6 高效简洁、功能丰富
-
内核实现高效简洁
-
丰富的任务间通信机制:信号量、互斥量 、消息队列、条件变量、事件标志组等
-
支持动态装载,支持多进程
-
内存管理
-
软件定时器
-
IO 系统
-
掉电安全文件系统
-
丰富的驱动框架 UART SPI I2C GPIO CAN TOUCH LCD…
3.7 低功耗
-
支持 Tick-less 技术,减少 Tick 中断
-
设备低功耗框架
-
系统空闲时 CPU 进入深度睡眠
3.8 高质量源码认证
-
符合 MISRA C 2012 编程规范
-
白盒测试,内核代码分支覆盖率达 100%
-
可通过 IEC 61508 SIL3 认证
3.9 开发者友好
-
一致的 API 设计,易于使用
-
丰富且详尽的开发文档
-
强大的集成开发环境
-
Shell 命令行
-
图形化内核行为分析
- 内核与应用图形化调试,多线程感知
- 内核与应用代码覆盖率分析
- 崩溃现场(寄存器、调用函数栈)分析
- 静态堆栈消耗量分析
- 完善的 C 库、C++ 运行时支持
四、MS-RTOS 应用领域
MS-RTOS 在保证小内存消耗的同时采用了目前最先进的设计方法,彻底颠覆传统物联网节点开发方式,提高物联网节点安全性。符合未来 5G 时代万物互联的需求。