学号:SA13217009 姓名:朱苗苗
e学论坛上海财务管理学院一,任务的优先级调度法
在实时任务调度中,调度策略中使用最多的是优先级调度法。当实时任务到达时,指派一个优先级,进入任务队列。在任务队列中,优先级最高的任务排在第一位,由高到低顺序排列。
优先级调度法主要有单调速率算法、截止期最早最优先(earliest deadline first,简称EDF)、空闲时间最短最优先(least slack first,简称LSF)、最早放行最优先、可达截止期最早最优先、价值最高最优先、价值密度最大最优先等策略,其中,EDF和LSF是讨论最为广泛的两种策略。 二,任务优先级的确定
任务的优先级通常由任务的一个或多个特征参数来确定,如截止期、空闲时间或关键性(任务的重要程度)等.如果优先级仅仅是由某个特征参数来确定是不够的,如EDF策略将最高优先级指派给具有截止期最早的任务,LSF策略将最高优先级指派给具有空闲时间最短的任务。因为
同性婚姻>东方女郎截止期短的任务不一定是非常关键的,其空闲时间也不一定短,反之亦然,所以需要研究至少利用两个特征作为任务的独立特征参数,建立任务优先级与这些特征参数之间的、一对一的对应关系。目前的许多研究比较集中在综合关键性与截止期这两个任务属性上,如关键性-截止期优先(基于相对截止期与关键性之比值来分配优先级)和加权的最早截止期价值密度优先。
有很多嵌入式实时操作系统一般都是支持优先级的抢占式操作系统。它们的根本特点就是一旦某个高优先级的任务就绪就可以马上获得CPU资源得以运行。任务优先级的安排在这类型操作系统中非常关键。如果任务调度是基于优先级的,任务必须是可阻塞的。一个非阻塞的任务会使比它优先级低的任务永远得不到运行机会。在优先级的安排上,如果两个任务无任何关系,赋予运行时间短(从运行到阻塞)或者运行频率低的任务更高的优先级,这样会使整个系统中的任务的平均响应时间最短。对于单向任务间通信的两个任务,一般赋予接收消息或信号量的任务更高的优先级。双向通信的两个任务优先级可以互为高低。如果消息和信号量不是在任务运行前申请和初始化,那么把初始化放在先得以运行的那么任务中,否则会造成先运行的任务无法阻塞。在优先级安排的时候一既要合理使用消息、信号量等任务间通信又不能滥用,避免造成死锁。 粗铅
三,优先级表
西陵网校优先级分派策略可以看成是一个函数,适用于单个任务或一个任务组。当用于单个任务时,函数的结果就是对应于分派策略所确定的、该任务的优先级;当用于任务组时,函数的结果是这些任务的一个排序表,在实施调度时,优先级最高者排第一,最低者排最后。