一、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 时代万物互联的需求。