【技术实现步骤摘要】
可双向转换的并发性验证方法、系统、设备及存储介质
[0001]本专利技术涉及C语言源码并发性安全
,尤其涉及一种可双向转换的并发性验证方法、系统、设备及存储介质。
技术介绍
[0002]形式化验证是指采用形式化方法对计算机软硬件进行安全性验证的过程。形式化方法是指基于严格的数学推导基础,对计算机软硬件系统进行描述、开发和验证的技术。其数学基础是建立在形式语言、语义和推理证明三位一体的形式逻辑系统之上。正是由于形式化的数学严格性使得经过形式化验证的程序安全性得以保证。虽然形式化验证并不能完全保证系统无错,但是其目的是为了最大限度理解和分析系统,将给出的系统规范转化为形式化条件,并尽可能验证系统是否满足这些条件。
[0003]并发性验证是指使用CSP等过程建模语言将需要验证的软件系统进行重新建模,将系统内部的数据、行为和实体进行抽象,并在系统模型代码中加入相应的并发性验证模块代码,最后输入到模型检查引擎中得出并发性验证结果。可验证的并发性属性有死锁检测、可达性验证、无散度判别等。另一方面,采用常见的并发性验证方法存
【技术保护点】
【技术特征摘要】
1.一种可双向转换的并发性验证方法,其特征在于,包括以下步骤:步骤1:基于源码API信息与文档功能需求,整合出一种双分支映射的中间层规范;步骤2:将所述中间层规范分别自动映射为抽象过程模型与源码级验证模型,进行并发属性验证与功能性验证;步骤3:根据所述并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。2.根据权利要求1所述的可双向转换的并发性验证方法,其特征在于,步骤1包括以下子步骤:步骤101:分析待验证程序中所有的变量,作为所述中间层规范中的行为载体,通过行为载体描述中间层的状态及行为;再确定待验证程序中的主要状态变迁主要依靠的函数,将其设置为FUNCTION元素;步骤102:隐藏底层具体繁杂的内存状态,引入等价的抽象状态用于表述底层完整功能逻辑,忽略函数变量具体的取值,只考虑相应的状态变迁及变迁条件,描述出函数具体内部逻辑;步骤103:一次性处理所有的API,通过步骤102转化为所述中间层规范。3.根据权利要求1所述的可双向转换的并发性验证方法,其特征在于,步骤2包括:将所述中间层规范自动向上映射为抽象过程模型并进行高层并发属性验证;将所述中间层规范自动向下映射为源码级验证模型并进行功能性验证。4.根据权利要求3所述的可双向转换的并发性验证方法,其特征在于,将所述中间层规范自动向上映射为抽象过程模型并进行高层并发属性验证包括以下子步骤:步骤201:根据所述中间层规范表现出的状态间逻辑关系进行抽象;步骤202:确定状态间转移条件,形成不同的抽象路径,每条路径包含相应的前置后置状态;步骤203:对所述中间层规范进行分析,确定路径相关性,将并发的路径并列起来,生成相应的高层规范;步骤204:根据高层规范得到高层抽象状...
【专利技术属性】
技术研发人员:庞飞,谢小赋,唐六华,曾梦岐,罗敏,陈维彬,李海波,
申请(专利权)人:中国电子科技集团公司第三十研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。