1.一种任务同步偶发任务低能耗调度方法,其特征在于,包括:
根据系统的实际需求,计算出动态低速度;
利用栈资源协议的最佳可行性分析条件计算出动态高速度;
根据最早截止期限优先策略给任务分配优先级,高优先级的任务优先执行;
任务开始以动态低速度执行,当有任务被阻塞时,其以动态高速度执行直到完成执行;
任务完成执行后,被阻塞的任务以动态高速度执行直到完成执行;
所述根据系统的实际需求,计算出动态低速度,包括:
初始化动态低速度和可延迟任务集合;
当偶发任务释放任务实例时,如果其属于可延迟任务集合,增加动态低速度,并将偶发任务从可延迟任务集合中移除;
当偶发任务超过其最小释放间隔还没有释放任务实例,且其不属于可延迟任务集合,降低动态低速度,并将偶发任务加入到可延迟任务集合;
当处理器处于空闲状态时,动态低速度设置为0;
所述栈资源协议是指任务不需要访问资源时,任务按照优先级执行,如果任务的优先级相同,按照先来先服务的原则执行;当任务需要访问资源时,占有资源的各个任务的优先级等于该任务拥有资源中最高优先级的最高限度;只要任务请求资源,就将资源分配给任务;
栈资源协议的最佳可行性分析条件表示为:
其中,t为大于0的实数,P1,Pi,Pj,Pk分别表示偶发任务T1,Ti,Tj,Tk的最小释放间隔,Bj表示偶发任务Tj的最大阻塞时间,Ck,Ci分别表示偶发任务Tk和Ti最坏情况下的执行时间,i,j,k,n为大于0的整数;
由最佳可行性分析条件表达式计算出动态高速度 如下:
所述根据最早截止期限优先策略给任务分配优先级,高优先级的任务优先执行,具体是:在偶发任务释放之后,计算出偶发任务的截止期限,根据截止期限的值对所有的偶发任务进行排序,截止期限的值越小,排在最前面,其优先级也越高;当截止期限的值相同时,按照偶发任务的释放时间进行排序,释放时间越小,排在前面,其优先级也越高;当这两者相同时,随机选取任务,排在前面,被选取的任务优先级也越高;高优先级的任务优先执行。
2.根据权利要求1所述的任务同步偶发任务低能耗调度方法,其特征在于,动态低速度增加的量和降低的量均为偶发任务的利用率,所述偶发任务的利用率ui用如下公式表示:其中,Ci和Pi分别为偶发任务Ti的最坏情况下的执行时间和其最小释放间隔;i为大于0的整数。
3.根据权利要求1所述的任务同步偶发任务低能耗调度方法,其特征在于,所述任务开始以动态低速度执行,当有任务被阻塞时,其以动态高速度执行直到完成执行;任务完成执行后,被阻塞的任务以动态高速度执行直到完成执行,具体包括:当偶发任务Ti释放后获得执行所需的所有资源时,其以动态低速度SL开始执行;
当有偶发任务Tk释放且Tk的优先级高于Ti的优先级时,如果Tk所要访问的关键区和Ti所要访问的关键区相同,则Tk被阻塞;此时Ti将以动态高速度 执行,直到完成执行,Ti完成执行后,Tk以动态高速度 执行,直到完成执行;如果Tk所要访问的关键区和Ti所要访问的关键区不同或者Tk不用访问关键区时,Tk抢占Ti的执行,其执行速度也为动态低速度SL,Tk完成执行时,被挂起的Ti以动态低速度SL恢复执行。