1.一种适用于数控系统固定优先级可靠性感知能耗优化方法,其特征在于,包括:任务集调度之前,计算任务Ti执行的统一速度SU;
将执行时间最大的任务选为缩放任务;
利用双优先级单调速率策略调度任务,计算出任务Ti的静态空闲时间SSTi,且将其分配给缩放任务;
回收任务Ti在线产生的动态空闲时间DSTi;
采用贪婪策略将动态空闲时间分配给就绪队列优先级最高的任务;
根据任务Ti的可利用空闲时间情况决定其最后的执行速度Si;
利用动态功耗管理技术决定处理器的状态;
所述任务集调度之前,计算任务Ti执行的统一速度SU,其处理步骤如下:SU=min{ST,SH}
其中,ST是资源受限周期任务集调度可行的最小速度,SH是单调速率策略调度资源受限周期任务集可行的速度;ST由下式计算:ST=LSRT+SNRT
其中,LSRT是有资源需求任务集的最小速度,SNRT是没有资源需求任务集的最小速度;其值由下式计算:其中,NRT是没有资源需求的任务集合,ui是任务Ti的利用率,F(n)是单调速率策略调度周期任务可行的利用率上界;
所述将执行时间最大的任务选为缩放任务,其处理步骤如下:将周期任务集按照任务的执行时间进行排序,选出执行时间最大的任务作为缩放任务;当任务的最大执行时间相同时,释放时间早的任务作为缩放任务;当任务的最大执行时间与其释放时间都相同时,将下标小的任务作为缩放任务;
所述计算出任务Ti的静态空闲时间SSTi的方法如下:SSTi=(F(n)-Utot/SU)*(di-ti)其中,F(n)是单调速率策略调度周期任务可行的利用率上界,Utot是周期任务集的利用率,di是任务Ti的绝对截止期限,ti是任务Ti的释放时间;
所述动态空闲时间DSTi由下式计算:
其中,remk是任务Tk的剩余执行时间,wk是任务Tk的剩余最坏情况下执行时间,ek是任务Tk的最坏情况下执行时间,hp(Ti)是优先级比任务Ti优先级高的任务集合,xk是常数,当任务顺利完成执行,xk=1;否则,xk=0;
采用贪婪策略将动态空闲时间分配给就绪队列优先级最高的任务,具体包括:选出就绪队列优先级最高的任务,如果该任务是执行时间最大的任务,此时的动态空闲时间为DSTi=DSTi+SSTi;如果该任务不是执行时间最大的任务,此时的动态空闲时间DSTi保持不变;将此时所有的动态空闲时间分配给该任务;
所述根据任务Ti的可利用空闲时间情况决定其最后的执行速度Si,具体包括:当任务Ti的可利用动态空闲时间DSTi大于其最坏情况下执行时间时,构造其恢复任务,恢复任务以最大的处理器速度执行,Si由下式计算:其中,remi为任务Ti的剩余执行时间,wi为任务Ti的剩余最坏情况下的执行时间,ei为任务Ti最坏情况下的执行时间;当任务Ti的可利用动态空闲时间DSTi小于其最坏情况下执行时间时,Si由下式计算Si=Smax
其中,Smax是最大的处理器速度;
所述利用动态功耗管理技术决定处理器的状态,具体包括:当处理器处于空闲状态时,如果此时的空闲时间大于处理器状态切换开销,利用动态功耗管理技术将处理器切换到休眠模式,直到下一个任务实例释放;如果此时的空闲时间小于处理器状态切换开销,处理器依然保持空闲状态。