基于资源竞争模型的aadl模型可调度性验证方法

文档序号:8282125阅读:770来源:国知局
基于资源竞争模型的aadl模型可调度性验证方法
【技术领域】
[0001] 本发明涉及一种AADL模型可调度性验证方法,特别涉及一种基于资源竞争模型 的AADL模型可调度性验证方法。
【背景技术】
[0002] 文献"基于UPPAAL的AADL模型可调度性验证.计算机应用,2009,(7) "公开了 一种针对AADL模型的可调度性分析方法。该方法将AADL模型之中的各个构建的时间属性 与状态转换利用时间自动机来描述。通过制定转换规则,将AADL模型转换为时间自动机模 型,并使用时间自动机分析工具UPPAAL来进行计算,从而得到AADL模型的可调度性分析结 果。文献方法通过计算转化的时间自动机的错误状态的可达性来判断AADL模型的可调度 性,但是当AADL模型较为复杂时,转化为时间自动机的状态很庞大,可能造成无法计算或 者计算起来十分耗时。因此该方法当需要分析的AADL模型较为复杂时会存在一定的缺陷, 计算将十分耗时甚至无法得到结果。

【发明内容】

[0003] 为了克服现有AADL模型的可调度性分析方法耗时长的不足,本发明提供一种基 于资源竞争模型的AADL模型可调度性验证方法。该方法对AADL模型进行测试,验证模型的 相关时间属性满足可调度性要求。通过分析AADL架构模型中构件间的交互关系得到线程 执行顺序关系,即同步关系或并发关系,并根据这些连接关系生成进程的并发体集合、线程 的干扰集。从而建立系统的可调度性分析模型一资源竞争模型。在此基础上,将线程构件 的执行时间属性以及利用资源竞争模型计算得到的响应时间相加,并与线程构件的截止时 间属性相比较从而得到系统中各个构件的可调度性,进而分析整个系统的可调度性。避免 了利用自动机模型时遇到复杂系统会造成状态过多难以计算的问题,对于结构复杂的AADL 模型可以在短时间内计算出系统的可调度性分析结果。
[0004] 本发明解决其技术问题所采用的技术方案:一种基于资源竞争模型的AADL模型 可调度性验证方法,其特点是包括以下步骤:
[0005] 步骤一、通过分析AADL模型的架构,提取构件与时间相关的属性以及构件连接关 系,找到系统中各个进程的并发体的集合,系统的并发体集合用CS表示。
[0006] 步骤二、通过分析AADL模型的架构,提取构件与时间相关的属性以及构件连接关 系,找到系统的线程干扰集集合,用InterS表示。为每个进程建立完并发体集合后,针对进 程P i中的任意一个线程IV,建立其干扰集Inter?:
[0007] 1)分析与线程V在同一个进程中的线程:如果线程IV和线程IV是并发关系,即 TivCIV,并且线程?7的优先级不低于线程T Λ那么TJ属于IV的并发集,即Γ e 。通过 分析进程Pi中的每个线程,建立线程IV的并发集;
[0008] 2)分析与线程V在不同进程中的线程:对于与线程IV不在同一个进 中的线程,选择进程P1中线程执行时间之和最大的并发体,把这个并发体中的线程加入线 程IV的干扰集InteiV中,作为进程P1Q辛i)中的线程的代表。在计算各个并发体中线 程执行时间之和之前,需要针对下面两种情况对并发体进行裁剪:
[0009] i.并发体中有线程通过进程连接而与线程IV形成连接关系;
[0010] ii.并发体中有线程的优先级低于线程IV。
[0011] 完成从并发体中裁剪掉这些线程之后,计算各个并发体中剩余的线程的执行时间 之和,然后找出与线程IV所在的进程不同的各个进程中的并发体,并选择线程的执行时间 之和最大的并发体,将该并发体中裁剪完剩余的线程加入到线程IV的干扰集Inter^中;
[0012] 将计算得到的线程IV的并发集Gw/中的线程加入到干扰集InteiV中,完成线程 V的干扰集Inter ^的建立。
[0013] 步骤三、由步骤一、二的结果得到系统的资源竞争模型,所述资源竞争模型由一个 四元组描述,即RCM = (PS, TS,CS, InterS),其中,PS是系统的进程集合,由系统中全部N个 进程组成,而Pi表示系统中的任意一个线程,所以PS= (P1,…,Pi,-,PJ ;TS是系统中全 部线程组成的集合,TSi表示系统中某个进程P 所有线程组成的集合。如果系统由进程 P1,…,Pi,…,Pn这些进程构成,那么每个进程都对应一个线程集合,即TS i,…,TSi,…,TSN, 那么整个系统的线程集合TS = TS1 η…n TS Γ·· n TSn。另外,如果进程Pi中有M if线程, 那么TSi是其对应的线程集合,则7?1, ; CS是系统的并发体集合,由所有 进程中的并发体组成,而CSi表示进程P i中的所有并发构成的集合,是CS的一个子集,所以 CS = CS1H…n CS r·· n CSn。另外,如果进程Pi中有s if并发体,那么是其对应的并发 体集合,则= Cf_,cf}. InterS是系统的线程干扰集集合,与线程集合TS -一 对应,TS中的每个线程对应Inters中的一个干扰集,即InteiV是线程IV对应的干扰集, 所以Inters是一个由集合组成的集合,Z慶d H/"叫!,…,//伽?ν/|,…,/"妨;人…,/ 是线程IV对应的并发集,而且cb?/是InteiV的真子集,也就是Cwj/ 。
[0014] 步骤四、基于系统的资源竞争模型中各个线程的干扰集来计算该线程的响应时 间;线程IV需要等待其干扰集中所有线程执行完成并释放处理器资源才能开始执行,所以 其响应时间R(IV)就是其干扰集InteiV中所有线程的执行时间之和,如公式(1)所示。
【主权项】
1. 一种基于资源竞争模型的AADL模型可调度性验证方法,其特征在于包括W下步骤: 步骤一、通过分析AADL模型的架构,提取构件与时间相关的属性W及构件连接关系, 找到系统中各个进程的并发体的集合,系统的并发体集合用CS表示; 步骤二、通过分析AADL模型的架构,提取构件与时间相关的属性W及构件连接关系, 找到系统的线程干扰集集合,用Inters表示;为每个进程建立完并发体集合后,针对进程 Pi中的任意一个线程护,建立其干扰集/"kC : 1) 分析与线程早在同一个进程中的线程:如果线程7T和线程7:'是并发关系,即 7TC巧',并且线程7;"的优先级不低于线程早',那么7;"属于7/的并发集,即矿€ Co"/ S通过 分析进程Pi中的每个线程,建立线程7;^'的并发集C""/ . 2) 分析与线程皆在不同进程中的线程:对于与线程早不在同一个进程Pi (1声i)中的 线程,选择进程Pi中线程执行时间之和最大的并发体,把该个并发体中的线程加入线程斬 的干扰集巧1'^中,作为进程Pi (1声i)中的线程的代表;在计算各个并发体中线程执行时 间之和之前,需要针对下面两种情况对并发体进行裁剪: i. 并发体中有线程通过进程连接而与线程取形成连接关系; ii. 并发体中有线程的优先级低于线程 完成从并发体中裁剪掉该些线程之后,计算各个并发体中剩余的线程的执行时间之 和,然后找出与线程巧所在的进程不同的各个进程中的并发体,并选择线程的执行时间之 和最大的并发体,将该并发体中裁剪完剩余的线程加入到线程取的干扰集中; 将计算得到的线程早的并发集COH,'中的线程加入到干扰集化《巧'^'中,完成线程取的 干扰集/"似的建立; 步骤S、由步骤一、二的结果得到系统的资源竞争模型,所述资源竞争模型由一个四元 组描述,即RCM = (PS,TS,CS,Inters),其中,PS是系统的进程集合,由系统中全部N个进 程组成,而Pi表示系统中的任意一个线程,所WPS=巧。…,P。…,PJ ;TS是系统中全 部线程组成的集合,TSi表示系统中某个进程Pi中所有线程组成的集合;如果系统由进程 Pi,…,P。…,Pw该些进程构成,那么每个进程都对应一个线程集合,即TS。…,TS。…,TSw, 那么整个系统的线程集合TS = TSiH…n TSi…n TSw;另外,如果进程Pi中有Mi个线程, 那么TSi是其对应的线程集合,则7马=巧I,…,2:',…,2;w'} = CS是系统的并发体集合,由所有 进程中的并发体组成,而CSi表示进程P i中的所有并发构成的集合,是CS的一个子集,所W cs = cSin…n cSi…n cSw;另外,如果进程Pi中有Si个并发体,那么巧是其对应的并发 体集合,则巧=杞,...片,...,巧}^。*日'5是系统的线程干扰集集合,与线程集合15 -一 对应,TS中的每个线程对应Inters中的一个干扰集,即是线程对应的干扰集,所 W Inters是一个由集合组成的集合,知/姑二;/"/巧|....,/"似;"|..…/?/巧'/"佩!'''!.抗打 > 1 是线程r对应的并发集,而且Con/是如汹7^的真子集,也就是Cg"/C /W巧^ . 步骤四、基于系统的资源竞争模型中各个线程的干扰集来计算该线程的响应时间;线 程早需要等待其干扰集中所有线程执行完成并释放处理器资源才能开始执行,所W其响 应时间K巧0就是其干扰集/?《巧"中所有线程的执行时间之和,如公式(1)所示;
(1) 其中77是线程巧的干扰集/W巧"中的一个线程,而巧2;')是线程r/的执行时间; 步骤五、将每个线程的响应时间和执行时间之和与其截止期限属性进行比较,获得每 个线程的可调度性;计算出各个线程的响应时间后,从系统的AADL模型中的构件属性中直 接获得各个线程的执行时间和截止期限属性,对各个线程构件的可调度性和整个系统的可 调度性进行判断;整个系统的可调度性进行判断根据下面两条规则: 规则1 ;在一个给定处理器资源的系统中,7:^是其中的一个线程,巧0是该线程的响 应时间,巧早)是该线程的执行时间,而Oea奶/ne/是该线程的截止期限值eadline)属性值, 如果满足K巧')+巧利 <心"^&砖,完成线程周度; 规则2 ;在一个给定处理器资源的系统中,如果任意一个线程7; '都能够被成功调度,那 么该系统就能够被成功调度; 根据上面介绍的可调度性分析方法和两条判断规则,根据系统的AADL模型静态计算 分析出其可调度性。
【专利摘要】本发明公开了一种基于资源竞争模型的AADL模型可调度性验证方法,用于解决现有AADL模型的可调度性分析方法耗时长的技术问题。技术方案是通过分析AADL架构模型中构件间的交互关系得到线程执行顺序关系,并根据这些连接关系生成进程的并发体集合、线程的干扰集。从而建立系统的可调度性分析模型—资源竞争模型。将线程构件的执行时间属性以及利用资源竞争模型计算得到的响应时间相加,并与线程构件的截止时间属性相比较从而得到系统中各个构件的可调度性,进而分析整个系统的可调度性。避免了利用自动机模型时遇到复杂系统会造成状态过多难以计算的问题,对于结构复杂的AADL模型可以在短时间内计算出系统的可调度性分析结果。
【IPC分类】G06F9-46
【公开号】CN104598302
【申请号】CN201510064421
【发明人】董云卫, 隗立超, 童安乐
【申请人】西北工业大学
【公开日】2015年5月6日
【申请日】2015年2月9日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1