[发明专利]基于AADL扩展附件的软件系统堆栈分析方法有效

专利信息
申请号: 201710597752.4 申请日: 2017-07-20
公开(公告)号: CN107402759B 公开(公告)日: 2020-07-17
发明(设计)人: 杨雨婷;柯文俊;达一菲;侯敏;陈静;王泊涵;王坤龙 申请(专利权)人: 北京计算机技术及应用研究所
主分类号: G06F8/20 分类号: G06F8/20;G06F8/35
代理公司: 中国兵器工业集团公司专利中心 11011 代理人: 刘瑞东
地址: 100854*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明涉及一种基于AADL扩展附件的软件系统堆栈分析方法,属于软件开发技术领域。本发明通过新增属性集,设计了一种基于AADL扩展附件的软件系统堆栈分析方法,其基于树结构实现任务栈空间计算和栈空间调整。利用系统AADL模型信息来构建树,自定义树结点数据结构,计算系统栈空间,并将其与内存大小对比,若设计的栈空间大小超出实际内存大小则进行调整,调整设计的堆栈数据以满足系统要求。该方法可以实现在模型设计阶段进行栈空间分析,提高软件开发效率。
搜索关键词: 基于 aadl 扩展 附件 软件 系统 堆栈 分析 方法
【主权项】:
一种基于AADL扩展附件的软件系统堆栈分析方法,其特征在于,包括以下步骤:步骤一、进行AADL堆栈属性集的扩展和数据结构的定义首先基于AADL模型增加属性集StackAnalysis_Property,设置堆栈分析所需的相关属性,每个属性的类型为bits、bytes或kbytes;令:LVTS=Local_Varibales_of_Task_Size,Local_Varibales_of_Task_Size为属性集中的属性,表示任务局部变量大小范围;LVFS=Local_Variables_of_Function_Size,Local_Variables_of_Function_Size为属性集中的属性,表示被调用函数局部变量大小范围;RAFS=Return_Address_of_Function_Size,Return_Address_of_Function_Size为属性集中的属性,表示被调用函数返回地址大小范围;CSF=Code_Size_of_Function,Code_Size_of_Function为属性集中的属性,表示被调用函数代码空间大小范围;CallNum表示AADL模型组件v被其他任务组件调用的次数;High表示v在树中深度;RS表示v的临近子结点栈空间总范围;MD表示v的工作模式;其次,在扩展属性集的基础上,对AADL模型组件中的子程序组件和非子程序组件定义数据结构:v为非子程序组件,其数据结构:Struct_V={LVTS,CallNum,High,RS,MD}v为子程序组件,其数据结构:Struct_V={RAFS,LVFS,CSF,CallNum,High,MD}步骤二、进行树结构的构建和总栈空间范围的计算以系统的AADL模型的组件为结点,组件具有的堆栈属性为结点数据,并根据结点间包含或调用关系确定各组件在树中的结构关系,从而构建树;树结构用T(E,V)表示,其中V是带有属性信息的树结点集合,对于v为AADL模型组件,若v在多个模块中调用,则赋予不同的树结点名称;E为树枝集合,对于uv∈E表示两种情况:一种是v为非子程序组件,则u包含v,u为v的父结点;第二种是v是子程序组件,则u调用v,u为v的父结点;将子程序组件和非子程序组件作为树中的结点,按步骤一的定义给出这两种组件结点的数据结构;设父结点为F,子结点集合FS={S1,S2,…,Sm,F1,F2,…,Fn},FS中有m个子程序组件S1,S2,…,Sm,n个非子程序组件F1,F2,…,Fm,则F的总栈空间计算公式为:TotalSize=max{MDSizei},i=1,2,...,N  (1)其中,N代表FS中的工作模式数目,MDSizei表示同一种工作模式下的栈空间大小,设第i种工作模式下有t个子程序组件,p个非子程序组件,则公式(1)中的:MDSizei=max{Si1,Si2,...Sit,Σj=1pFij}---(2)]]>其中,Sir表示第i种工作模式下的第r个子程序组件的栈空间大小,r=1,2,…t;Fij表示在第i种工作模式下第j个非子程序组件的栈空间大小;公式(2)中的Sir和Fij的计算公式如下:Fij=LVTSij+RSij,其中其中,nn表示在第i种工作模式下第j个非子程序组件的临近子结点个数,分别表示在第i种工作模式下第j个非子程序组件的第q个临近子结点对应的LVTS、RS表示的数据信息;Sir=LVFSir+RAFSir+CSFir+max{LVFSirq+RAFSirq+CSFirq},q=1,2,...,sn---(4)]]>其中,sn表示Sir的调用子程序组件个数,分别表示Sir的第i种工作模式下的第r个子程序组件的第q个临近子结点对应的LVFS、RAFS、CSF表示数据信息;StackAnalysis_Property中各属性值均有各自的上下限值,将Struct_V中各参数的最小值和最大值代入式(1)至式(4)中得到系统的总栈空间范围[MinSize,MaxSize]。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201710597752.4/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top