4、实时操作系统任务理解:从超级循环到RTOS任务

实时操作系统任务理解:从超级循环到RTOS任务

1. 实时系统中的超级循环

在实时系统里,简单的超级循环若运行迅速(通常因其功能和职责有限),响应性会相当不错。不过,超级循环的简单性可谓利弊共存。由于每个函数总是按顺序依次执行,它们的调用顺序固定且相互依赖。一个函数产生的延迟会传递给下一个函数,导致该次循环执行的总时间增加。

例如,若 func1 在一次循环中执行耗时10微秒,而下次却需100毫秒,那么 func2 在第二次循环中的调用速度会远低于第一次。

超级循环中的 func3 负责检查代表外部事件的标志状态(该事件表示信号的上升沿)。 func3 检查标志的频率取决于 func1 func2 的执行时间。设计良好且响应迅速的超级循环通常执行速度极快,检查事件的频率高于事件发生的频率。但当外部事件发生时,循环要等到 func3 下次执行才能检测到该事件,这中间存在延迟,且延迟并不稳定,这种时间差异被称为抖动。

若系统在响应事件时的抖动有已知的最大值,则该系统具有确定性,即能在事件发生后的指定时间内可靠响应。对于实时系统中的时间关键组件而言,高度的确定性至关重要,否则系统可能无法及时响应重要事件。

单纯基于轮询的系统存在响应性差的局限。若要对某个事件及时做出响应,可编写一个紧凑的循环等待该重要事件发生,但这种方法仅适用于系统仅关注这一个事件的情况,在如今复杂的现实系统中很少出现。

2. 超级循环实现并行操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值