专利名称:基于交互式马尔科夫链模型检测的嵌入式系统性能评价技术方案的制作方法
技术领域:
本发明涉及嵌入式系统的性能评价问题,包括其软件系统和硬件系统的评价以及综合评 价,适用于嵌入式系统性能测试与评价、以及高可靠性计算机系统开发领域。
二背景技术:
(1) 嵌入式系统(Embedded System)性能评价问题是嵌入式系统开发、研制和集成过程中 的一项重要内容,可以为嵌入式产品的发展、技术改造等提供各种定量分析的依据。通常, 性能评价主要有两种方法, 一种是基于测量的(Measurement-based),另一种是基于模型的
(Model隱based)。
在基于测量的方法中,通常是通过在一个具体的原型系统上进行模拟试验得出测试数 据来进行分析的,这就只能是一种后期的性能评价手段,不能在设计过程中利用评价结果对 系统的设计开发进行指导;而基于模型的方法则是构造一个能以足够精度描述感兴趣的度量 的系统抽象模型,并在此模型上用分析、数值或者模拟的方法来分析系统数量上的性质,但 是目前还很少采用模型检测这一个已经取得很多研究成果的方法来对系统的性能进行分析 和评价。
(2) 模型检测(Model Checking)是一种基于模型的形式化验证方法。它主要用于验证有限状 态的系统是否满足一些特定的性质。在模型检验中,系统模型通常用一个有限状态机的形式 来表达,而与系统相关的性质通常用某种时序逻辑来表达,并提供一个有效的算法来检验该 状态转换图是否满足给定的时序逻辑公式,从而达到验证系统正确性的目的。这是一种已经 被实践证明的自动高效的形式验证方法,被广泛应用于包括软件和硬件系统的验证。
但是,现在的模型检测技术基本上都是用来进行功能上的验证,而很少用来对系统的性 能进行评价和分析。
(3) 交互式马尔科夫链(Interactive Markov Chains, IMC)是一个经典的进程代数模型和连 续时间马尔可夫链模型的结合,是一个可以组合化的性能评价模型。进程代数是经典的对并 发系统进行组合化分析的一个理论框架,而连续时间马尔可夫链则是经典的性能评价模型, 而IMC将这两者结合的方式是尽可能的保持两者之间的正交性。此技术方案中将用IMC来表 示嵌入式系统的性能评价模型。
三
发明内容
a) 发明目的
将模型检测技术用到嵌入式系统的IMC模型上,提出以模型检测为基础的嵌入式系统 性能评价技术方案,为嵌入式系统的自动高效性能评价给出一种新的技术方法和技术手段。
b) 技术方案
本发明内容包括三方面
(1)基于交互式马尔科夫链的模型检测基础理论交互式马尔科夫链的结构、基于其上的模型检测理论、模型检测算法和工具平台等构成 了本发明专利的理论基础。
标记转移系统是一个主要用于刻画并发系统的行为特征的模型,它关注的是系统在发生 状态转移的时候所执行的动作,状态本身的信息并不是它关心的,而在性能评价领域常用的 马尔可夫链模型则主要关心系统所处的状态信息,因此,在用马尔可夫链进行系统的性能评 价时,人们常常采用的是稍作修改的马尔可夫链。我们提出的交互式马尔可夫链在结合传统 的标记转移系统和连续时间马尔可夫链的时候采用的是尽可能正交的方式,即,保留两种转 移关系,而不是将它们合二为一。
我们这里定义一个交互式马尔科夫链(IMC)为一个五元组(S, S。), 其中,S是一个非空的状态集合,」W是一个动作集合,一是一个动作转移集合,-->是一 个马尔科夫转移集合,x。是初始状态。这个交互式马尔科夫链的结构定义中,动作转移集合 即是标记转移系统中的转移,即从一个状态执行一个动作后转移到另外一个状态,而马尔科 夫转移是连续时间马尔科夫链中的随机分布延迟转移,即从一个状态以服从以入为参数的 指数分布的概率转移到另外一个状态对马尔科夫转移要求满足条件任意一对状 态之间的最多只能有一个马尔科夫转移,但是允许到状态自身的转移《-- 5,表示系统经 过参数为入的指数分布延迟后仍然停留在原状态。
图1中是一个IMC模型的例子,其中结点表示状态,虚线表示马尔科夫转移,其上的 标记是指数分布的参数,实线表示动作转移,其上的标记表示动作。
基于IMC模型检测的过程如图2所示。这个过程分成三个阶段建模阶段、运行阶段 和结果分析阶段。
建模阶段模型检验器的输入是两个形式模型, 一个是表示系统的有限状态机模型,另 一个是表示系统性质的时序逻辑公式。因此,我们首先需要对实际系统进行建模,将其行为 表示成某种有限状态机的形式。而对于需要验证的系统的性质,也需要有一种精确的、没有 歧义的方式来表示出来,这通常是通过某种时序逻辑来刻画的,这一过程实际上就是对系统 性质描述的一个形式化的过程。
运行阶段模型检验器根据特定的算法,在输入的系统模型上进行检验,看所要验证的
性质公式是否满足。通常这种检验是一种穷尽搜索的方式,因此运行完毕可以保证检查的
100%覆盖率。根据具体实现算法的不同,不同模型检验器的效率也不一样。
结果分析阶段这一阶段是对模型检测器的运行结果做分析,给出相应的结论。基本
上,可能的结果有三种情况(i)系统满足给定的性质公式,则继续检验下一个性质(如果 有的话);(ii )系统不满足给定的性质公式,则根据情况给出相应的反例,帮助定位错误; (iii )内存不足,无法完成检验。这通常是由于系统状态空间过大,超出机器的可用内存空 间了,因此需要减小需要验证的系统规模重新检验。IMC模型检测器是基于我们的IMC模型检测算法而开发的专门对IMC性能模型进行模 型检测的一个工具。它具有下面这些特点(i)采用基于交互式马尔可夫链展开的完全算法, 并在此基础上增加了学习机制,利用智能优化过程和启发式策略提高求解模型检测问题的效 率;(ii)完全使用图形化的操作手段及界面,直观显示模型信息。在状态图模式支持拖放 状态、转移、文本标签等和多种操作,修改方便;(iii)集成了一个可视化的公式编辑器, 具有操作简便,显示美观,兼容性强等优点,除用于显示aCSL公式外,稍加改动可成为通 用公式编辑器;(iv)能方便地进行执行效率的统计,例如统计算法执行时间长短、所耗内 存空间数、运算实时剪除的分枝数、最大迭代深度、回朔跳转数、最小误差阈值等等信息, 以方便用户跟踪和调试。
(2)嵌入式系统性能的刻画与表达的形式化语言aCSL (Action-based Continuous Stochastic Logic)
aCSL是我们通过修改CSL逻辑而得到的一个逻辑,去掉了传统的原子命题,增加了动 作的描述,因此它是一个基于动作的时序逻辑系统。aCSL公式分为状态公式和路径公式,
分别用来刻画系统性能指标两方面的性质。其定义为,设p为概率,在
间取值,M表示
小于等于,小于,大于等于或大于,则aCSL的状态公式由以下语法产生
::=力r朋| ^ A$
aCSL的路径公式由以下语法产生
其中状态公式表示系统的状态应该满足的性质,路径公式表示系统的执行路径应该满足 的性质。
aCSL提供了非常丰富的反映系统性能特征的刻画,它不但可以描述经典的CTL路径公 式的含义(取动作集合为全集Act,同时定义相应的状态上的原子命题即可),而且能对系 统特定的执行动作提供描述的手段,同时还提供了重要的性能量化指标(如时间要求,概率 特征等),更重要的是,这些性质的刻画完全是形式化的,具有严格的语法和语义解释,消 除了非形式化描述的模糊性和歧义性,因此aCSL具有很强的表达能力,是描述IMC的时 序性能特征的理想语言。
用aCSL描述嵌入式系统的常用性能规范。在aCSL中,系统的性能与可靠性特征主要 由P算子表达,由于我们关心的是系统的时序特征,因此P是作用在aCSL路径公式上的, 它给出了一类广泛的基于路径的性能度量的刻画,这些路径包含了传统的CTL路径公式的
4 I TWw)集合。在图3中我们用例子对一些常见的嵌入式系统的性质刻画给出说明。 (3)基于IMC模型检测的嵌入式系统性能评价技术方案
基于IMC模型检测的嵌入式系统性能评价的过程如图4所示。基本上可以采取以下几 个步骤。
确定性能评价内容对于性能评价的内容,不同的嵌入式系统侧重点不同。但一般来说 对嵌入式系统的性能评价内容大致是,在规定的一段时间和条件下,系统能维持其性能水平 的能力相关的一组属性。可用成熟性、容错性、易恢复性等基本子特性来度量。根据具体嵌 入式系统的侧重点,再不同程度地细化这几个子特性到可具体度量的水平,并和相关人员(项 目负责人,客户方,监理方等)沟通确认下来,并签署备忘录。
确定性能评价指标、划分性能等级 一旦嵌入式系统的性能评价内容被确定下来后,就 可以根据需求和客观条件对每一个性能评价细项确定其评价指标和预期的评价结果,而且把 性能等级分成高、中、低三个等级,在每个等级中,每个细项的指标和预期的评价结果不同。 这些确定下来后要形成文档和表格,并提交有关人员审核通过。
嵌入式系统抽象成需要的IMC模型根据前面评价内容的需要,客观地从嵌入式系统 抽象出IMC性能模型,或者从系统开发模型中直接抽象出IMC性能模型。这个过程可以是 手工的抽象,也可以借助自动化工具将系统开发模型转换成IMC性能模型。
用aCSL语言表达性能规范对每个性能等级中根据每个性能细项的预期性能值,按照 aCSL语法,形式化地把它们表达出来,基本上一个细项可以表示成一条或几条aCSL语句。 这个过程是手工进行的,需要对aCSL语言和逻辑学有一定的基础。所有的性能都表示出来 后,还要对这些形式化表达的性能进行初步的一致性检査,并尽量去除不一致性。然后按照 需求,把这些性能细项按照其评价的优先级排成一个序列,写成一个文档,准备进行自动化 的性能评价。
执行IMC模型检测过程输入前面抽象出来的IMC性能模型,和进行初步处理过的 aCSL表示的性能规范,IMC模型检测器开始自动化地对每个性能表达式进行验证,给出每 项评价的结果,如果规范满足就给出YES (满足)的结果,如果不满足就给出NO (不满足) 的结果,并自动把结果记录下来,供结果分析时使用。根据结果可以适当地调整性能指标, 以基本精确地确定出系统的性能值。如对满足的结果,可以适当调高性能指标再验证,直到 其不满足时,就可以大致知道其性能值的一个范围;如对不满足的结果,也可以适当调低性
能指标再验证,直到其满足,就可大致知道其性能的比较精确的值。
结果分析根据上面一步计算后给出的结果来对嵌入式系统的性能进行分析。有两个方 面的情况要分析, 一是对每个性能细项进行分析,以判定是否达到性能预期,并可以大致确 定其偏差值,二是按照性能等级对各个性能细项综合起来分析,判定整个嵌入式系统的性能, 并大致确定偏差。最后,综合运用验证的结果分析指出嵌入式系统的性能瓶颈,并显著标示。
最后,综合评定、并给出系统性能评价报告,报告中至少要包括性能评价对象、性能评 价内容、性能评价指标和等级、各项内容在自动化模型检测器中执行结果、评价指标和执行 结果的对比分析、本次嵌入3系统的性能评价结论、以及对进一步开发的指导和建议等几项内谷。
<0有益效果
(1) 特别适合大规模复杂嵌入式系统的自动高效的性能评价项目,也适合复杂的嵌入
式系统开发的系统级设计阶段的对系统开发模型的性能评估项目;
(2) 是一个自动化的性能评价技术方案,并且是量化的嵌入式系统性能评价方案;
(3) 解决问题速度较快,对计算空间要求不高,节约成本;
(4) 过程清晰明确,可操作性强。
四
图l: IMC性能模型
图2: IMC性能模型检测过程
图3: aCSL公式对嵌入式系统性能的刻画
图4:应用IMC模型检测的嵌入式系统性能评价过程
五具体实施例方式
采取五个主要的步骤来具体实施, 一、抽象出嵌入式系统的IMC性能评价模型,并把 它表示成能输入计算机的文本文件的形式;二、用aCSL精确表示出嵌入式系统待评价的性 能指标,并把它表示成能输入计算机的文本文件的形式;三、把一、二两步的文件输入到 IMC模型检测器中,然后运行IMC模型检测器,让计算机自动运算直到得出计算结果,计 算结果由计算机自动以文本文件的形式给出;四、根据计算机的输出结果,对嵌入式系统的 各个方面的性能进行细致地分析;五、由前一步的分析结果,得出具体的嵌入式系统性能的 总体评价,并通过比对需求中的性能指标来进一步指出嵌入式系统性能的改进意见,再把这 些结果总结成符合标准的嵌入式系统性能评价报告文档。
权利要求
1、基于交互式马尔科夫链模型检测的嵌入式系统性能评价技术方案,其特征是该过程方案包含以下步骤1)确定性能评价内容和指标、划分性能评价等级。2)抽象出嵌入式系统的交互式马尔科夫链(IMC)性能模型,并用基于动作的连续随机逻辑语言(aCSL)描述性能规范。3)执行IMC模型检测器进行自动化的性能验证,并根据验证结果进行性能分析和评价。4)给出嵌入式系统性能的综合评定,并给出性能评价报告。
2、 根据权利要求1所述的基于交互式马尔科夫链模型检测的嵌入式系统性能评价技术 方案,其特征是解决问题速度较快,对计算空间要求不高,节约计算成本。
3、 根据权利要求1. 2所述的性能模型,其特征是用交互式马尔科夫链性能模型来抽象 复杂嵌入式系统。根据权利要求1. 2所述的性能规范描述,其特征是用逻辑语言aCSL 来描述复杂嵌入式系统的性能规范。
4、 根据权利要求1. 3所述的利用IMC模型检测器进行自动化的性能验证,其特征是不 但能进行自动高效地验证嵌入式系统的性能,并且能够给出嵌入式系统的比较精确的性 能指标范围。
全文摘要
本发明提出了一种有效地对复杂嵌入式系统进行性能评价的技术方案。为了应对越来越复杂的嵌入式系统的性能评价问题,本发明提出采用一种新的交互式马尔科夫链(IMC)性能模型来抽象复杂嵌入式系统,采用一种改进的形式化语言基于动作的连续随机逻辑语言(aCSL)来描述性能规范,并利用IMC模型检测器软件来自动验证嵌入式系统的性能规范,再根据验证的结果来对复杂嵌入式系统进行性能分析和评价的思想、方法和技术方案。该思想新颖实用,该方法解决问题速度较快,对计算空间要求不高,节约计算成本,该方案过程清晰明确,可操作性强,而且利用模型检测器的自动验证和分析功能可以给出嵌入式系统的比较精确的性能指标范围。本发明对复杂嵌入式系统的评测提供了一种精确的量化方案,并对嵌入式系统的开发模型的评估和改进有很好的帮助。
文档编号G06F11/36GK101593149SQ20091005967
公开日2009年12月2日 申请日期2009年6月19日 优先权日2009年6月19日
发明者吴尽昭, 陈剑锋 申请人:中科院成都信息技术有限公司