1.一种资源受限混合任务能耗感知方法,其特征在于,包括以下步骤:建立资源受限混合任务实时调度模型;
设置分配非周期任务的截止期限,将其与周期任务一起调度,且利用栈资源协议确保资源互斥访问;
计算资源受限能耗最佳速度So;
计算系统产生的动态空闲时间I;
确定周期任务的执行速度Si且非周期任务以最大处理器速度执行;
利用动态功耗管理技术将处理器速度切换至低功耗状态;
所述建立资源受限混合任务实时调度模型,包括:混合任务包括周期任务集和非周期任务集;周期任务集由n个硬实时周期任务组成,其中n是正整数;硬实时周期任务由Ti表示,其中i是整数,其取值范围为1≤i≤n;周期任务共享m个可重复利用的资源Rl,其中m和l是正整数,l的取值范围为1≤l≤m;非周期任务由Jk表示,其中k是大于1的正整数;周期任务Ti由三元组(pi,ei,ri)表示,其中pi是周期任务Ti的周期;ei是周期任务Ti最坏情况下的执行时间;ri是周期任务Ti的资源需求;非周期任务Jk由二元组(Ak,Ck)表示,其中Ak是非周期任务Jk的释放时间;Ck是非周期任务Jk的平均执行时间;
所述设置分配非周期任务的截止期限,将其与周期任务一起调度,且利用栈资源协议确保资源互斥访问,包括:
将非周期任务的截止期限初始化为d0=0,且服务器的截止期限也设置为0;根据以下的规则更新非周期任务的截止期限:当服务器的预算qs=0,设置qs=Qs,非周期任务的截止期限设置为dk+Ts,其中Qs为服务器的最大预算,Ts为服务器的周期,dk为当前服务器的截止期限;
当服务器处于空闲状态,非周期任务到达时,且服务器的预算满足qs≥(dk-Ak)·Us,设置qs=Qs,非周期任务的截止期限设置为dk+Ts,其中,Us为服务器带宽,Ak是非周期任务Jk的释放时间;否则,非周期任务的截止期限设置为dk;
将非周期任务与周期任务一起调度,包括:非周期任务与周期任务都是根据截止期限分配优先级;截止期限越近,其优先级越高;
截止期限越远,其优先级越低;截止期限相同,释放时间越早,其优先级越高;释放时间越晚,其优先级越低;截止期限与优先级都相同时,任务下标小的优先级越高;高优先级的任务优先被调度;
所述栈资源协议确保资源互斥访问,包括:当任务执行过程中没有访问资源,其优先级保持不变;当访问资源时,其优先级变成使用该资源任务的最高优先级;当任务释放资源之后,其优先级恢复到原来的优先级;
所述计算系统产生的动态空闲时间I,由下式表示:I=Ih+Ic
其中,Ic为服务器所产生的空闲时间;Ih为周期任务提早完成所产生的空闲时间,Ih由下式表示:
其中,Mi是任务Ti的剩余执行时间,P(Ti,t)是在时刻t已经完成执行且优先级比任务Ti优先级高的任务集合;
所述利用动态功耗管理技术将处理器速度切换至低功耗状态,其处理步骤如下:当处理器处于空闲状态时,且此时动态空闲时间I大于切换处理器状态的时间开销时,利用动态功耗管理技术将处理器切换到低功耗状态;否则,处理器保持空闲状态;
所述资源受限能耗最佳速度SO的计算方法如下:So=max{Scrit,ST}其中,Scrit为处理器能耗最优的运行速度;ST为资源受限情况下的最优速度,ST的值表示为:
其中,Dmin为资源受限下的处理器需求;
所述周期任务的执行速度Si的计算方法如下:其中,Wi为任务Ti的最坏情况下的剩余执行时间。