十九讲 同优先级时间片调度

 

之前的设计中,每个优先级都只有1个任务,现在同一个优先级有一堆任务,任务用任务队列连接在一起。每次都取出队列中的第一个任务运行,然后把这个任务

移到这列表的末尾。

在实际的操作中,修改如下:

1、定义了一个时间片,以systick为基本单位,在任务初始化的时候对其赋值,然后把任务加到同优先级的队列中。

2、在systick的中断中,对current的时间片减1,如果时间片为0了,那么就要把这个任务扔到队列的末尾。

3、然后触发任务调度。

 

1、在任务初始化的时候,把任务加入其优先级队列。

posted on 2018-03-07 13:55  nasduc  阅读(390)  评论(0编辑  收藏  举报

导航