本文将介绍基于Soft RTOS和Hard RTOS的Laye构建方法的差异。
Soft RTOS
Soft RTOS是一种适用于对时间有一定要求但可容忍一定延迟的系统的实时操作系统。
特点:
- 尽可能遵守截止日期,但允许一定程度的延迟
→ 例如:视频播放、音频处理、游戏等 - 即使发生延迟也不会造成致命影响
- 调度机制具有高度灵活性,与通用操作系统相似
- 实现相对简单,成本也较低
Hard RTOS
Hard RTOS是一种适用于需要严格遵守时间约束的系统的实时操作系统。任务的执行时间必须绝对得到保证。
特点:
- 严格遵守截止时间
→ 必须在1毫秒内完成的任务,必须在规定时间内完成 - 时间延迟可能导致严重后果
→ 例如:飞机控制、医疗设备、汽车控制等 - 需要高精度计时器和中断控制
- 调度基于优先级,以将延迟降至最低
Soft RTOS与Hard RTOS中不同层的实现方法
Soft RTOS的分层结构通常按照下图所示,依次调用下层的分层函数。接口通过函数的参数和返回值来实现。
Hard RTOS的分层结构如下方图所示,通过分层函数的处理位置来确定。分层间接口通常使用全局变量等实现。由于这种结构容易导致“意大利面条式代码”,因此建议设置分层间接口或组件间接口。
