[FreeRTOS学习] 了解任务调度算法

任务特性

  • 每个任务都赋予了一个优先级。
  • 每个任务都可以存在于一个或多个状态。
  • 在任何时候都只有一个任务可以处于运行状态。
  • 调度器总是在所有处于就绪态的任务中选择具有最高优先级的任务来执行。

固定优先级抢占式调度

是指每个任务都被赋予了一个优先级,这个优先级不能被内核本身改变(只能被任务修改)。 ”抢占式”是指当任务进入就绪态或是优先级被改变时,如果处于运行态的任务优先级更低,则该任务总是抢占当前运行的任务

单调速率调度(Rate Monotonic Scheduling, RMS)

根据任务周期性执行的速率来分配一个唯一的优先级,这种优先级分配方式
被证明了可以最大化整个应用程序的可调度性(schedulability),但是运行时间不定以及
并非所有任务都具有周期性,会使得对这种方式的全面计算变得相当复杂

协作式调度

任务永远不会被抢占,而具有相同优先级的任务也不会自动共享处理器时间。协作式调度的这作工作方式虽然比较简单,但可能会导致系统响应不够快

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容