基于加权下推系统的中断验证系统技术方案

技术编号:15840204 阅读:67 留言:0更新日期:2017-07-18 16:44
本发明专利技术公开了一种基于加权下推系统的中断验证系统,该系统包括目标代码建模模块、可达格局获得模块、可达格局遍历模块、当前格局回溯模块、结果输出模块。本发明专利技术的系统可以将实时系统的中断验证与加权下推系统相结合,以形式化的方式对实时系统中断进行验证,提高了验证的可靠性和鲁棒性;同一个模型下同时验证有关中断的时序逻辑、优先级反转、内存访问冲突以及超时问题,具有高效性,同时也节约了成本。

Interrupt verification system based on weighted pushdown system

The invention discloses an interrupt verification system weighted pushdown system based on the system, including the target code modeling module, module, pattern is obtained up to the pattern of ergodic module, the current pattern of backtracking module, result output module. The system of the invention can interrupt the verification and real-time system weighted pushdown systems combine in a formal way to verify the real-time interrupt system, improve the reliability and robustness verification; the same model also confirms the related disruption of temporal logic, priority inversion, memory access conflicts and timeout problems with high efficiency, but also saves the cost.

【技术实现步骤摘要】
基于加权下推系统的中断验证系统
本专利技术属于程序的静态分析以及模型检验领域,涉及一种基于加权下推系统的中断验证技术。
技术介绍
随着计算机和移动互联网的飞速发展,嵌入式实时系统被广泛应用于各个行业:制造、医疗、交通以及通信等各个行业都与嵌入式实时系统有着密切联系。相对于普通计算机系统,嵌入式实时系统对于可靠性有着更高的要求,特别当一个实时系统应用在关乎生命的领域时,任何不可靠因素或某些强实时任务超过规定时限,都可能引起难以预测的严重后果。在嵌入式实时系统中,为了使系统可以及时地与外界环境进行交互,人们引入了“中断机制”:中断是实时系统的一个重要部分,当出现需求时,它使得处理器可以暂时停止当前程序的执行转而去执行处理新情况的程序。然而,中断产生的随机性和不确定会对系统的内存安全和时间安全等方面产生不小的隐患。而通过形式化方法的技术对中断的相关性质进行研究验证,不仅保证了中断机制的正常运行,而且还能提高此类系统的安全性指标。目前国内外对于此问题已有一些验证方法,但是都无法用同一个方法来验证有关中断的重要问题,比如使用中断时间自动机(InterruptTimedAutomata,ITA)来描述带有中断的多任务系统,将实时系统转换为中断时间自动机,通过对ITA进行可达性分析来验证系统是否满足某种或某几种性质,但是当系统过于庞大时,所转成的中断时间自动机会产生状态爆炸等相关问题;通过加颜色的控制流图,用来对中断驱动的软件进行静态检查,其主要针对栈的长度和类型以及执行时间的deadline进行分析。以及通过抽象中断机(TheAbstractInterruptMachine,AIM),将程序抽象到线程一层,将同步操作看作原子操作,使用抽象中断机来描述程序中断处理与顺序非处理代码之前的交互,通过程序逻辑中的规范语言来判断是否存在中断所产生的相关问题,通过AIM可以解决共享资源访问冲突以及中断造成的堆栈、内存溢出等问题。
技术实现思路
针对以上问题,本专利技术的目的是提供基于加权下推系统的中断验证系统,将程序目标代码转换为加权下推系统,求出加权下推系统的可达格局,继而根据可达格局对程序进行分析,针对求出的可达格局对时序逻辑、优先级反转、内存访问冲突以及超时问题进行验证。为实现以上目的,并解决有中断驱动的嵌入式实时系统中存在的几类问题,本专利技术采取的技术方案是:一种基于加权下推系统的中断验证系统,包括:目标代码建模模块:其用于提取需要验证的不同任务的程序的目标代码,将其转换为加权下推系统;可达格局获得模块:其用于根据所述加权下推系统的可达性算法以及问题的需求计算出Pre加权自动机或Post加权自动机,Pre加权自动机或Post加权自动机可接受的语言作为可达格局;可达格局遍历模块:其用于遍历获得的所有的可达格局,在遍历的过程中,判断当前格局信息是否满足验证需求性质,如果不满足,判读错误类型,跳转至当前格局回溯模块,若遍历完所有格局均满足验证需求性质,返回正确,则跳转至结果输出模块;当前格局回溯模块:其用于根据当前格局进行回溯,找出不满足所需验证性质的路径,给出该程序不满足验证需求性质的结果,并且给出反例路径,算法结束;结果输出模块:其用于给出所述程序满足验证需求性质的结果。优选地,所述加权下推系统包括三元组W=(P,S,f),其中P=(P,Γ,Δ)为下推系统,为有界幂等半环,f:Δ→D是将下推规则映射到权重。优选地,所述下推系统P=(P,Γ,Δ)中,P是有限的控制位置集合,Γ是有限的栈字符集合,Δ是有限的迁移规则的集合规则的形式为:<p,v→q,w>,其中,(p,v,q,w)∈Δ。优选地,所述有界幂等半环中,D为权重集,0,1∈D,为D上的二元操作:1)(D,)为以0为中性元的可交换的幺半群,并且是幂等的;2)(D,)为以1为中性元的幺半群;3)对可分配,即对于所有a,b,c∈D,有4)0为操作的零化子,即对于所有a∈D,5)D上偏序关系<定义为b∈D,a<b当且仅当a⊕b=a,在此关系下不存在无穷降链。优选地,所述可达性包括给定一个初始格局和一个目标格局,判断能否从初始格局出发,通过有限步的格局迁移到达目标格局。优选地,所述Pre加权自动机为接受所有从当前格局可以到达的所有pre可达格局的自动机,所有pre可达格局为所有可以通过有限步的格局迁移到达该格局的格局集合。优选地,所述Post加权自动机为接受所有从当前格局可以到达的所有post可达格局的自动机,所有post可达格局为该格局通过有限步的格局迁移可以到达的格局集合。优选地,所述的验证需求性质包括:1.程序运行时是否满足规定的时序逻辑;2.程序是否会出现因中断产生优先级反转的情况,即优先级低的任务可以打断优先级高的任务及其子任务;3.程序运行是否满足实时性,即能够在规定的时间内完成某项任务;4.程序运行时是否有因为中断产生的内存访问冲突。本专利技术的有益效果包括:1.将实时系统的中断验证与加权下推系统相结合,以形式化的方式对实时系统中断进行验证,提高了验证的可靠性和鲁棒性。2.同一个模型下同时验证有关中断的时序逻辑、优先级反转、内存访问冲突以及超时问题,具有高效性,同时也节约了成本。附图说明图1是本专利技术基于加权下推系统的中断验证方法的框架图;图2是本专利技术基于加权下推系统的中断验证方法的步骤图;图3是本专利技术中求解pre自动机的算法图;图4是本专利技术中求解post自动机的算法图;图5是应用本专利技术基于加权下推系统的中断验证方法验证超时问题的框架图。图6是基于加权下推系统的中断验证系统的框架图。具体实施方式结合以下具体附图,对本专利技术作进一步的详细说明。实施本专利技术的过程、条件等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本专利技术没有特别限制内容。本专利技术的目的是将嵌入式实时系统的中断验证与加权下推系统相结合,将实时系统的目标代码建模成加权下推系统模型,将所需信息加入到模型中,在同一个模型下同时验证有关中断的几类重要问题。本专利技术公开了一种基于加权下推系统的中断验证方法,该方法采用加权下推系统来表示嵌入式实时系统中有关中断的目标代码之间的跳转关系,通过对目标代码建模成的加权下推系统进行可达性分析,从而判断系统的中断是否满足安全性与可靠性。如图1所示,本方明的基于加权下推系统的中断验证方法包括:首先根据程序目标代码中指令的跳转关系将其建模成加权下推系统,在这个过程中,将优先级信息压入一个堆栈,将指令周期信息作为权值,然后通过加权下推系统的可达性算法,得出所有的可达格局;最后遍历所得的可达格局,判断当前格局信息是否满足需求,如果不满足,则判断错误类型,返回错误路径,若遍历完所有可达格局没有发现错误,则返回正确。如图2所示,本专利技术提出的所述基于加权下推系统的中断验证方法,具体步骤为:步骤1:提取需要验证的程序的目标代码,将其转换为加权下推系统;优选地,在该步骤中,提取需要验证的不同任务的程序的目标代码,为所述不同任务的程序的目标代码分别添加优先级信息以及指令周期信息,即将优先级信息压入一个堆栈,将指令周期信息作为权值,根据所述程序目标代码中指令的跳转关系将所述目标代码建模成加权下推系统;步骤2:根据加权下推系统的可达性算法以及问题的需求计算出Pre加权自动机或Post本文档来自技高网
...
基于加权下推系统的中断验证系统

【技术保护点】
一种基于加权下推系统的中断验证系统,其特征在于,包括:目标代码建模模块:其用于提取需要验证的不同任务的程序的目标代码,将其转换为加权下推系统;可达格局获得模块:其用于根据所述加权下推系统的可达性算法以及问题的需求计算出Pre加权自动机或Post加权自动机,Pre加权自动机或Post加权自动机可接受的语言作为可达格局;可达格局遍历模块:其用于遍历获得的所有的可达格局,在遍历的过程中,判断当前格局信息是否满足验证需求性质,如果不满足,判读错误类型,跳转至当前格局回溯模块,若遍历完所有格局均满足验证需求性质,返回正确,则跳转至结果输出模块;当前格局回溯模块:其用于根据当前格局进行回溯,找出不满足所需验证性质的路径,给出该程序不满足验证需求性质的结果,并且给出反例路径,算法结束;结果输出模块:其用于给出所述程序满足验证需求性质的结果。

【技术特征摘要】
1.一种基于加权下推系统的中断验证系统,其特征在于,包括:目标代码建模模块:其用于提取需要验证的不同任务的程序的目标代码,将其转换为加权下推系统;可达格局获得模块:其用于根据所述加权下推系统的可达性算法以及问题的需求计算出Pre加权自动机或Post加权自动机,Pre加权自动机或Post加权自动机可接受的语言作为可达格局;可达格局遍历模块:其用于遍历获得的所有的可达格局,在遍历的过程中,判断当前格局信息是否满足验证需求性质,如果不满足,判读错误类型,跳转至当前格局回溯模块,若遍历完所有格局均满足验证需求性质,返回正确,则跳转至结果输出模块;当前格局回溯模块:其用于根据当前格局进行回溯,找出不满足所需验证性质的路径,给出该程序不满足验证需求性质的结果,并且给出反例路径,算法结束;结果输出模块:其用于给出所述程序满足验证需求性质的结果。2.根据权利要求1所述的基于加权下推系统的中断验证系统,其特征在于,所述加权下推系统包括三元组W=(P,S,f),其中P=(P,Γ,Δ)为下推系统,为有界幂等半环,f:Δ→D是将下推规则映射到权重。3.根据权利要求2所述的基于加权下推系统的中断验证系统,其特征在于,所述下推系统P=(P,Γ,Δ)中,P是有限的控制位置集合,Γ是有限的栈字符集合,Δ是有限的迁移规则的集合规则的形式为:<p,v→q,w>,其中,(p,v,q,w)∈Δ。4.根据权利要求2所述的基于加权下推系统的中断验证系统,...

【专利技术属性】
技术研发人员:黄滟鸿郭欣史建琦何积丰李昂方徽星
申请(专利权)人:华东师范大学上海丰蕾信息科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1