一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于事件流分析的多任务资源冲突检测方法与流程

2022-02-19 07:18:29 来源:中国专利 TAG:

技术特征:
1.一种基于事件流分析的多任务资源冲突检测方法,包括:1)给定以下数据:事件名称及其触发周期和应处理完成时间;各项任务占用时间;事件和任务的关系;2)根据各项事件的应处理完成时间构建事件时间片的集合{m1},{m1}的数据结构模型为:m
i1
{ti1,type,ci};其中:ti表示事件出现的时间片,type表示是否为周期事件,当type为偶发事件时,ci值为0;3)根据任务占用时间构建任务运行时间集合{m2},{m2}的数据结构模型为m
i2
{t
i2
,tk2,pk2};其中:ti表示任务处理完成时间,tk表示第k个任务,pk表示任务的优先级;4)根据任务调用资源情况构建任务调用资源情况集合{m3},{m3}的数据结构模型为m
i3
{tk,type,address{addr1,addr2,addr3…
}};其中:tk为m1序列中的某一个任务,type为资源使用类型,address为资源对应的空间地址;5)根据各项事件中需调用任务的关系构建事件和任务的关系集合{r1},{r1}的数据结构模型为r
i1
{tk1,m
a2
,m
b2
,m
c2

……
};其中:tk表示第k个事件,m
k2
表示tk事件对应{m2}的任务集合模型;6)将{m2}中的任务依据{r1}的关系,以{m1}的事件片,{m2}的任务优先级、任务序号排序,形成新的任务时间片序列的集合{m4},集合{m4}数据结构模型为:m
i3
{m
i1
,m
a2
,m
b2
,m
c2
,......};其中m
k1
表示当前事件对应{m1}的事件模型,m
k2
表示当前事件对应{m2}和{m3}对应的任务集合模型;7)计算{m4}中{m1}中每个事件对资源调用的时间段,{m2}中每个任务对资源调用的时间段;在以上分析的基础上,得到以下数据:各个事件对各个资源占用的最大时间;软件运行时各资源的使用率;是否存在资源冲突,以及存在冲突的事件和任务。2.根据权利要求1所述的基于事件流分析的多任务资源冲突检测方法,其特征在于,在所述步骤4)中,tk与{m1}中的成员对应。3.根据权利要求1所述的多任务资源冲突检测方法,其特征在于,在所述步骤5)中,tk1与{m1}中的成员对应,{m2}为所述步骤2)生成的集合{m2}的子集。4.根据权利要求1所述的多任务资源冲突检测方法,其特征在于,在所述步骤6)中,若{m4}中的{m1}对应{m1}序列中的单个事件,则记录该事件对应的事件序号、事件优先级和事件时间。5.根据权利要求1所述的多任务资源冲突检测方法,其特征在于,在所述步骤6)中,若{m4}中的某个事件包含{m2}的多个任务组成,则分别记录这些任务的{m2}中的任务的时间和优先级。6.根据权利要求1所述的多任务资源冲突检测方法,其特征在于,在所述步骤6)中,以
{m1}的事件片,{m2}的任务优先级、任务序号排序的方法为:优先以任务优先级从高到低进行排序;同一优先级的任务以事件序号、任务开始顺序和任务序号进行排序,偶发事件排序在前,先开始的任务的排序在前,先开始的事件排序在前;同一优先级、且任务开始时间一致,事件开始时间一致的则按序号先后顺序进行排序。7.根据权利要求1所述的多任务资源冲突检测方法,其特征在于,在所述步骤7)中计算{m4}中{m1}中每个事件对资源的占用率的方法为:统计特定资源被所有{m4}序列中事件被调用的时间和∑t1=t1 t2 t3

ti,其中,t时间为{m2}中的任务处理完成时间;如果{m4}中的某个时间点包括{m2}中的某个或某几个任务,则{m4}中的该事件的特定资源被调用的时间和∑t2=t1 t2 t3

ti,其中t时间为{m2}中的任务处理完成时间;则该事件的资源占用率为∑t2/∑t1。8.根据权利要求1所述的多任务资源冲突检测方法,其特征在于,在所述步骤7)中判断是否存在资源冲突,以及存在冲突的事件和任务的方法为:若某个特定资源被{m2}序列中多个任务调用,则根据{m1}序列对{m2}任务进行时间轴布局,对任务执行情况进行分析,当存在以下情况时,认为存在资源冲突:调用资源的多个{m2}序列任务在时间轴上存在重合,则重合的任务存在任务,包含重合任务的事件存在冲突。

技术总结
本发明公开了一种基于事件流分析的多任务资源冲突检测方法,根据软件任务书和系统环境构建事件流,并确定各事件触发条件或开始时间和各事件处理时间片的集合{M1};根据软件设计架构确定软件的所有任务、各项任务运行时间{M2}和各项任务运行时调用的资源{M3};根据软件设计架构确定各事件调用软件任务调用的的关系{R1};根据{R1}以{M1}中重合的时间点所调用的任务{M2}按照先后顺序排列成时间点的集合{M4};形成{M3}和{M4}的映射;得到每个资源的使用频段;是否存在资源冲突,以及存在冲突的事件和任务。本发明用于静态的检测软件资源冲突情况,可以根据软件实际运用场景精确定位软件资源冲突,并针对存在冲突的事件和任务对测试人员进行提示。试人员进行提示。试人员进行提示。


技术研发人员:胡逸琳 欧阳昭 侯正平 施小敏 张伟欣
受保护的技术使用者:上海航天计算机技术研究所
技术研发日:2021.10.25
技术公布日:2022/1/4
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献