AUTOSAR Task快速熟悉手册
Task
必须同时执行许多不同活动的系统称为并发系统。这些活动可能有一些软件部分,因此提供它们的程序必须并发执行。这些程序必须在必要时进行合作,例如,当它们需要共享数据时。实时系统中的每个并发活动都由一个任务表示。大多数应用程序代码存在于任务中。如果您有许多必须同时执行的任务,则需要提供一种允许并发的方法。一种方法是为每个任务设置一个单独的处理器。您可以使用并行计算机,但是这种解决方案对于许多应用程序来说过于昂贵。实现并发行为的更经济有效的方法是在单个处理器上一次运行一个任务。然后,您可以在任务之间切换,使它们看起来同时执行。
调度
AUTOSAR OS提供了一种根据固定优先级切换任务的静态方法。优先级只是任务相对紧迫的反应。有许多方案可以分配任务的优先级,比如
截止日期单调分配 优先级较高的任务会被分配给截止日期较短的任务
速率单调分配 更高的优先级被分配给需要最频繁运行的任务
无论选择分配优先级,任务执行的顺序都由调度策略决定。
调度策略决定任务实际运行的时间。
1. 抢占式调度
使用固定优先级的抢占调度策略:即运行处于ready状态的高优先级任务。如果一个任务正在运行,且有一个更高优先级的任务状态变为ready,则高优先级的任务会抢占正在运行的任务。这叫做任务切换。当更高优先级的任务结束时,被抢占的任务恢复运行。这种系统特点是反应灵敏。
2. 不可抢占式调度
操作系统运行准备运行的最高优先级的任务