优化嵌入式软件服务质量的调度方法

文档序号:9249158阅读:425来源:国知局
优化嵌入式软件服务质量的调度方法
【技术领域】
[0001] 本发明设及嵌入式系统技术领域,尤其设及一种优化嵌入式软件服务质量的调度 方法。
【背景技术】
[0002] 嵌入式系统(Embeddedsystem),是一种"完全嵌入受控器件内部,为特定应用而 设计的专用计算机系统"。嵌入式系统一般定义为;W应用为中屯、,W计算机技术为基础, 软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系 统。
[0003] 从智能手机,到智能手环、智能手表等可穿戴设备,再到电冰箱、机顶盒、微波炉等 家具电器,嵌入式电子系统已经悄然占据人们日常生活的各个角落。随着电子巧片制造工 艺的日趋成熟,一部嵌入式系统承载的功能,即运行的软件数量,也随着功能需求增加而不 断增长。即使底层硬件(如CPU处理器)运行速度越来越快,也难W避免对系统的服务质 量和功耗造成压力。针对该种情况,现有主流解决方案为提高底层硬件性能、简化软件复杂 度、或减少运行软件的数量。该样就不可避免带来系统在功耗和金钱开销上的浪费,或者系 统服务质量的下降。

【发明内容】

[0004] 本发明的目的在于提供一种优化嵌入式软件服务质量的调度方法,用于在不增加 系统硬件开销和不减少系统基本功能的基础上,保障众多软件运行时达到最优的综合服务 质量。
[0005] 为实现上述目的,本发明提供一种优化嵌入式软件服务质量的调度方法,包括:
[0006] 步骤10、根据非精确计算模型定义软件i的服务质量A为单调递增函数Q1 = 。(〇1),其中〇i为软件i选执行部分占用CPU周期数;
[0007] 步骤20、为最大化系统中各运行软件i的服务质量总和,数学建模为优化问题进 行求解:
[000引 目标为求解0i,最大化S。(0i);
[0009] 约束条件为
[0010]
[0011]
其中K为常数,Ti为软件i的执行时间,Ebudget为嵌入 式系统给定能耗,fmi。为CPU最低频率,f为CPU最高频率;
[0012] 步骤30、按照求解结果设置各软件i选执行部分占用CPU周期数〇1。
[0013] 其中,根据非精确计算模型定义软件i的服务质量化为线性单调递增函数Qi= 。(〇1) =biX〇i+nv其中bi和 为常数。
[0014] 其中,假设CPU频率范围无限,使得服务质量最优化的各〇i值为:
[0015]
此时软件i的执行时 间Ti=Tim。,,Tim。,为软件i的执行时间限制。
[0016] 其中,若〇i的最优取值使得CPU频率低于最小值fmi。,为保持〇i取值不变,减小软 件执行时间Ti至
[0017] 其中,若〇i的最优取值使得CPU频率高于最大值,需减少0產0 1=TiXfm。,。
[0018] 其中,根据非精确计算模型定义软件i的服务质量Qi为非线性单调递增函数。
[0019] 其中,采用满足非线性规划最优解的算法求解〇1。
[0020] 综上所述,本发明优化嵌入式软件服务质量的调度方法提供一种计算机操作系统 层面的统筹调度策略来控制系统中的软件运行,W达到在不增加系统硬件开销和不减少系 统基本功能的基础上,保障众多软件运行时达到最优的综合服务质量的效果。
【附图说明】
[0021] 图1为本发明优化嵌入式软件服务质量的调度方法的原理示意图;
[0022] 图2为本发明优化嵌入式软件服务质量的调度方法中软件服务质量随选执行部 分时长变化的关系示意图。
【具体实施方式】
[0023] 下面结合附图,通过对本发明的【具体实施方式】详细描述,将使本发明的技术方案 及其有益效果显而易见。
[0024] 本发明方案的成功实施必须基于两个重要的技术前提;(1)可变频的CPU处理器; (2)运行的软件任务有明确的服务质量量化定义。
[0025] 变频处理器指嵌入式系统的控制中枢,即CPU,可按需改变自身时钟频率,改变自 身运行速度,也因此改变软件运行速度。变频功能在主流处理器中广泛存在,如智能手机常 用的ARMCodex-A8处理器,速度可在600MHZ-1細Z之间调节。英特尔处理器自i3系列开 始,已经应用SpeedSt巧技术调解处理器频率,现今该系列处理器已升级至i9。
[0026] 参见图1及图2,图1为本发明优化嵌入式软件服务质量的调度方法的原理示意 图;图2为软件服务质量随选执行部分时长变化的关系示意图。本发明定义软件的服务质 量取决于软件执行的CPU时钟周期数,也就是说CPU执行该软件越多越久,软件所产生的服 务质量越好。本发明用非精确计算(Imprecise-Computation)模型来定义服务质量与CPU 执行时长的关系。其中"必执行部分"规定了软件执行的基本质量需求,如无法达到则软件 执行不成功,成功完成必执行部分则完成软件基本服务质量。"选执行部分"占用CPU越多, 则软件服务质量越高。随着软件设计日趋复杂,加上软件代码的迭代特征,该种定义方法越 来越符合现代软件形态。比如,作为当今主流视频编解码标准ISO的H. 264视频编解码标 准对视频编解码质量渐变性有类似规定。
[0027] -个嵌入式系统在某一运行时刻,操作系统中有多个软件任务等待执行。每个任 务不可能无限执行下去,因而每个任务有时限要求。本方法解决的技术问题是,如何最优的 安排(调度)系统中每个软件--Imprecise-Computation任务的开始、结束时间,使得任 务完成时不违反时限要求,同时最大化所有任务的综合服务质量。
[0028] 软件任务调度需决定=个参数,分别为软件i执行时间Ti、软件执行时CPU频率 fi、软件选执行部分占用CPU周期数(V软件选执行部分执行的越多,则软件服务质量越优。
[0029] 在嵌入式系统中进行任务调度,需局限于嵌入式系统的现实因素。其中S个关键 因素为时间、能耗、处理器可调频范围。
[0030] 时间
[0031] 嵌入式系统的任务通常是周期性的,该也就要求一个任务必须在一个时限内完 成,W保证执行效果和后续任务顺利进行。在该里假设任一软件i都有一个执行时间限制, 设为Tim"。一般来说,希望软件尽量完全占用该段执行时间,W最大化此软件的服务质量。 因而软件执行时间Ti一般就设定为最大时间限制,即T
[0032] 能耗
[0033] 嵌入式系统的处理器能耗由CPU任务运行周期数和CPU运行频率决定。该 里假设有充足能量来源保证任务的必执行部分完成,因而只考虑可执行部分的能耗 Ebudget。可执行部分能耗用公示表示为&=CXVi2X〇i,其中C为已知常量,Vi为与处 理器频率相关的操作电压,与软件执行时间和〇i关系约为
其中k为 处理器物理特性相关常量。由此可进一步导出能耗定义;
i中K 由k和C表示。能耗局限指各软
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1