CN113791776A - 可双向转换的并发性验证方法、系统、设备及存储介质 - Google Patents

可双向转换的并发性验证方法、系统、设备及存储介质 Download PDF

Info

Publication number
CN113791776A
CN113791776A CN202110883422.8A CN202110883422A CN113791776A CN 113791776 A CN113791776 A CN 113791776A CN 202110883422 A CN202110883422 A CN 202110883422A CN 113791776 A CN113791776 A CN 113791776A
Authority
CN
China
Prior art keywords
verification
function
source code
concurrency
attribute
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110883422.8A
Other languages
English (en)
Other versions
CN113791776B (zh
Inventor
庞飞
谢小赋
唐六华
曾梦岐
罗敏
陈维彬
李海波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETC 30 Research Institute
Original Assignee
CETC 30 Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CETC 30 Research Institute filed Critical CETC 30 Research Institute
Priority to CN202110883422.8A priority Critical patent/CN113791776B/zh
Publication of CN113791776A publication Critical patent/CN113791776A/zh
Application granted granted Critical
Publication of CN113791776B publication Critical patent/CN113791776B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • G06F8/355Round-trip engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/45Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
    • G06F8/456Parallelism detection
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种可双向转换的并发性验证方法、系统、设备及存储介质,其中方法包括:基于源码API信息与文档功能需求,整合出一种双分支映射的中间层规范;将中间层规范分别自动映射为抽象过程模型与源码级验证模型,进行并发属性验证与功能性验证;根据并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。本发明通过整合出一种可双分支映射的中间层规范,对源码规范与需求进行了抽象度居中的形式化表示,不仅完整描述了底层程序功能,还过滤了繁杂的程序实现细节,使得程序安全验证方向可以同时映射到高层与底层两个方向,解决了源码级验证与高层抽象验证之间存在的语义鸿沟,提供了高层属性端到源码端的一致性验证。

Description

可双向转换的并发性验证方法、系统、设备及存储介质
技术领域
本发明涉及C语言源码并发性安全技术领域,尤其涉及一种可双向转换的并发性验证方法、系统、设备及存储介质。
背景技术
形式化验证是指采用形式化方法对计算机软硬件进行安全性验证的过程。形式化方法是指基于严格的数学推导基础,对计算机软硬件系统进行描述、开发和验证的技术。其数学基础是建立在形式语言、语义和推理证明三位一体的形式逻辑系统之上。正是由于形式化的数学严格性使得经过形式化验证的程序安全性得以保证。虽然形式化验证并不能完全保证系统无错,但是其目的是为了最大限度理解和分析系统,将给出的系统规范转化为形式化条件,并尽可能验证系统是否满足这些条件。
并发性验证是指使用CSP等过程建模语言将需要验证的软件系统进行重新建模,将系统内部的数据、行为和实体进行抽象,并在系统模型代码中加入相应的并发性验证模块代码,最后输入到模型检查引擎中得出并发性验证结果。可验证的并发性属性有死锁检测、可达性验证、无散度判别等。另一方面,采用常见的并发性验证方法存在着下列问题:
1.推理低效困难:普通验证过程常采用单一的源码或者字节码进行底层验证,并发性验证需要证明高层的安全属性,如死锁、可达性、无散度判别等,而源码级或字节码级涉及到太多的无意义变量与逻辑,导致现有的自动推理系统失败,不能有效完成验证任务。
2.多验证系统无一致性保证:一部分验证方法会经过源码验证后,再去使用另一种抽象行为建模语言进行手动建模,但是因为系统中存在模型间的语义鸿沟,缺少严谨的一致性证明。如果人工编写源码级功能规范,再进行复杂的一致性推理,则会严重影响验证效率。
3.从规范生成的代码无法保证实际性能:一种方法从非形式化规范或规则,自动转换为形式化规范或规则,然后基于形式化功能规范自动生成符合规范的高级语言。实践证明这种从规范自动生成的编程语言虽然功能符合预期,但是代码逻辑在时间、空间复杂度的表现很差。
发明内容
为了解决上述问题,本发明提出一种可双向转换的并发性验证方法、系统、设备及存储介质,通过一种双分支映射的中间层规范自动转换到两个验证模型,即满足了底层与高层的验证需求,又保证了模型间的行为一致性,提高了验证效率。
本发明通过下述技术方案实现:
一种可双向转换的并发性验证方法,包括以下步骤:
步骤1:基于源码API信息与文档功能需求,整合出一种双分支映射的中间层规范;
步骤2:将所述中间层规范分别自动映射为抽象过程模型与源码级验证模型,进行并发属性验证与功能性验证;
步骤3:根据所述并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。
进一步的,步骤1包括以下子步骤:
步骤101:分析待验证程序中所有的变量,作为所述中间层规范中的行为载体,通过行为载体描述中间层的状态及行为;再确定待验证程序中的主要状态变迁主要依靠的函数,将其设置为FUNCTION元素;
步骤102:隐藏底层具体繁杂的内存状态,引入等价的抽象状态用于表述底层完整功能逻辑,忽略函数变量具体的取值,只考虑相应的状态变迁及变迁条件,描述出函数具体内部逻辑;
步骤103:一次性处理所有的API,通过步骤102转化为所述中间层规范。
进一步的,步骤2包括:
将所述中间层规范自动向上映射为抽象过程模型并进行高层并发属性验证;
将所述中间层规范自动向下映射为源码级验证模型并进行功能性验证。
进一步的,将所述中间层规范自动向上映射为抽象过程模型并进行高层并发属性验证包括以下子步骤:
步骤201:根据所述中间层规范表现出的状态间逻辑关系进行抽象;
步骤202:确定状态间转移条件,形成不同的抽象路径,每条路径包含相应的前置后置状态;
步骤203:对所述中间层规范进行分析,确定路径相关性,将并发的路径并列起来,生成相应的高层规范;
步骤204:根据高层规范得到高层抽象状态机,并参考系统的状态迁移属性,推理出状态迁移合法性规则,编写高层属性规范;
步骤205:依据所述高层抽象状态机中的状态、行为及逻辑信息,形成可用于并发推理的抽象过程模型;并根据所述高层规范与所述高层属性规范,生成并插入并发安全属性语句,最后进行并发属性验证。
进一步的,将所述中间层规范自动向下映射为功能性验证属性并进行功能性验证包括以下子步骤:
步骤301:根据所述中间层规范给出的函数调用关系,抽取函数实现逻辑以及函数内部变量的数据结构和传递条件;
步骤302:根据所述数据结构和传递条件,分析函数应达到的安全标准,将其生成为一个单独的验证函数;
步骤303:将生成的所述验证函数插入到源码中,形成最后输出的源码级规范;
步骤304:将转换输出的所述源码级规范进行功能性验证。
一种可双向转换的并发性验证系统,包括:
整合器,用于根据源码API信息与文档功能需求,整合出一种双分支映射的中间层规范;
双向转换器,用于将所述中间层规范分别映射为抽象过程模型与源码级验证模型,进行并发属性验证与功能性验证;
结果生成器,用于根据所述并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述的可双向转换的并发性验证方法的步骤。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现所述的可双向转换的并发性验证方法的步骤。
本发明的有益效果在于:
1.本发明通过整合出一种可双分支映射的中间层规范,对源码规范与需求进行了抽象度居中的形式化表示,不仅完整的描述了底层程序功能,还过滤了繁杂的程序实现细节,使得程序安全验证方向可以同时映射到高层与底层两个方向,解决了源码级验证与高层抽象验证之间存在的语义鸿沟,提供了高层属性端到源码端的一致性验证。
2.本发明可以将双分支映射的中间层规范自动向上映射生成相应的抽象过程模型并进行并发属性验证,同时自动向下映射为相应的源码级验证模型并进行功能性验证。双向转换过程自动完成,提高了验证效率。
3.在生成可双分支映射的中间层规范时,本发明采用了一次性覆盖所有源码API的方法,可以从中间层规范自动向上映射出过程模型分析系统并发属性,避免了对整个系统进行人工的重复建模,提高了系统灵活性。
附图说明
此处说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1为本发明实施例1的的可双向转换的并发性验证方法的流程图;
图2为本发明实施例1的的可双向转换的并发性验证方法的详细流程图;
图3为本发明实施例2的示例融资程序源码。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现说明本发明的具体实施方式。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明涉及的相关技术用语的说明如下:
API:Application Programming Interface,应用程序接口;
CSP:Communicating Sequential Process,通信顺序进程。
实施例1
如图1和2所示,本实施例提供了一种可双向转换的并发性验证方法,包括以下步骤:
步骤1:基于源码API信息与文档功能需求,整合出一种双分支映射的中间层规范,具体包括以下子步骤:
步骤101:分析待验证程序中所有的变量,作为中间层规范中的行为载体,通过行为载体描述中间层的状态及行为;再确定待验证程序中的主要状态变迁主要依靠的函数,将其设置为FUNCTION元素;
步骤102:隐藏底层具体繁杂的内存状态,引入等价的抽象状态用于表述底层完整功能逻辑,忽略函数变量具体的取值,只考虑相应的状态变迁及变迁条件,描述出函数具体内部逻辑;
步骤103:一次性处理所有的API,通过步骤102转化为中间层规范。
步骤2:(1)将中间层规范自动向上映射为抽象过程模型并进行高层并发属性验证,具体包括以下子步骤:
步骤201:根据中间层规范表现出的状态间逻辑关系进行抽象;
步骤202:确定状态间转移条件,形成不同的抽象路径,每条路径包含相应的前置后置状态;
步骤203:对中间层规范进行分析,确定路径相关性,将并发的路径并列起来,生成相应的高层规范;
步骤204:根据高层规范得到高层抽象状态机,并参考系统的状态迁移属性,推理出状态迁移合法性规则,编写高层属性规范;
步骤205:依据高层抽象状态机中的状态、行为及逻辑信息,形成可用于并发推理的抽象过程模型;并根据高层规范与高层属性规范,生成并插入并发安全属性语句,最后进行并发属性验证。
(2)将中间层规范自动向下映射为源码级验证模型并进行功能性验证,具体包括以下子步骤:
步骤301:根据中间层规范给出的函数调用关系,抽取函数实现逻辑以及函数内部变量的数据结构和传递条件;
步骤302:根据数据结构和传递条件,分析函数应达到的安全标准,将其生成为一个单独的验证函数;
步骤303:将生成的验证函数插入到源码中,形成最后输出的源码级规范;
步骤304:将转换输出的源码级规范进行功能性验证。
步骤3:根据并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。
需要说明的是,步骤2中的(1)、(2)不受所描述的动作顺序的限制,可以采用相反顺序或者同时进行。
综上所述,本实施例的可双向转换的并发性验证方法具有以下特点:
抽象度居中的建模语言:从API信息与文档功能需求中构建一种抽象度居中的语言建模,即避免了源码级与字节码级无意义变量与逻辑对推理系统效率的影响,又可以充分的描述低层的程序功能;即能隐藏底层具体繁杂的内存状态,又能引入等价的抽象状态用于表述底层完整的功能逻辑;
可双分支映射:中间层表述抽象度居中,能描述底层程序特征又能精确的描述程序的形式逻辑,非常便于实现自动双向转换;既可以自动向下映射为相应的功能性规范,提供给自动化功能性验证模块进行功能性验证,也可以自动向上映射为相应的CSP过程模型,提供给自动化并发性验证模块进行并发属性验证。
一次性覆盖所有API:在编写中间层规范时采用一次性覆盖所有API的方法,可自动向上生成过程模型,避免了对系统进行重复人工建模,增强了系统灵活性,提高了建模验证效率。
一致性:从同一个抽象度适中的中间层规范出发,经过双向映射分别进行源码级验证与高层抽象验证,保证了抽象端与源码端的行为一致性,避免了人工编写源码功能规范并进行复杂一致性证明,降低了验证工作量。
实施例2
本实施例在实施例1的基础上:
本实施例提供了一种可双向转换的并发性验证方法,可以根据给出的API源码和功能需求整合出一个双分支映射的中间层规范,为了能够更容易的让本领域技术人员理解,以下将用一个简单的C语言融资程序为例进行说明。本实施例使用编程语言为C语言,其并不构成对本发明的任何限制。本领域技术人员可以在本发明公开的技术内容启示下,将其应用于基于其他编程语言的安全性验证。本例中以图3所示的一个简单的融资程序为例,结合图1,对源码进行中间层规范整合的流程进行详细阐述,
根据实施例1的步骤1,实现过程如下:
步骤101a:首先对于图3显示的程序来说,确定声明中goal与raised为函数变量,在中间层规范中体现为实际的行为载体;再确定程序内部状态变迁的主要逻辑依靠invest函数内部行为来实现,则将invest定义为中间层规范中的FUNCTION元素;
步骤102a:函数内部逻辑为当融资金额小于目标时,进行融资操作;考虑到中间层规范即需要隐藏底层具体繁杂的内存状态,又要引入等价的抽象状态用于表述底层完整功能逻辑,raised涉及到两种状态,则将其声名为一个old(raised)带有时间性质的元素类型,当old(raised)<goal时,作为一种状态,触发操作raised==old(raised)+invest.value;
步骤103a:根据上述操作,将程序中所有API都整合为中间层规范;本实施例中invest整合出的中间层规范为:
Figure BDA0003193077550000091
如图1所示,本实施例的可双向转换的并发性验证方法,可以根据输入的双分支映射中间层规范,自动化映射到抽象层规范与实现层规范。
根据实施例1的步骤2,自动向上映射实现及验证过程如下:
步骤201a:根据中间层规范中表现出的状态间逻辑关系进行抽象;
步骤202a:确定每个状态之间的转移条件,形成不同的抽象路径,每条路径包含相应的前置后置状态。对于本实施例来说,中间层规范中的invest函数抽象出的路径为两条,以第一条路径为例,前置条件为(raised<goal∧value<goal-raised),后置条件为(raised<goal),此路径表示为可迁移路径1,表示函数模型可以从前置条件对应的状态跳转到后置条件对应的状态。
步骤203a:对于完整的中间层规范进行分析,确定每一个路径的相关性,对于可并发产生的路径将其并列起来;经过对所有路径的分析,得到的invest高层规范代码为:
Figure BDA0003193077550000101
步骤204a:根据高层规范得到invest函数高层抽象状态机,参考整个系统的状态迁移属性,推理出状态迁移合法性规则,编写高层属性规范;在本实施例中,参考invest函数路径,考虑到一旦募集成功,融资金额不能低于最低融资目标,则本实施例得到的高层属性规范代码为:
property high{
always((state==1)==>(goal<=raised));
}
步骤205a:根据高层规范,生成相应的CSP模型代码;根据相应的高层属性规范,并根据系统需求文档给出的并发性要求,编写相应的并发属性判断语句,如:#assert P()deadlock、#assert P()deterministic等;并将判断语句插入到CSP抽象过程模型代码中,最后输入到自动化并发验证模块进行系统并发模拟验证,并得出并发性验证结果。
根据实施例1的步骤2,自动向下映射实现及验证过程如下:
步骤301a:根据中间层规范给出的函数调用关系,抽取具体的函数实现逻辑,以及函数内部变量的数据传递结构和传递条件;
步骤302a:根据具体的数据传递结构及条件,自动化分析函数模块应该达到的安全标准,将其生成为一个单独的验证函数。在本实施例中,参考中间层规范中表述当raised旧值小于最低目标融资时,函数会进行融资操作,则自动生成一条判断函数语句:assert(raised==old_raised+value);
步骤303a:将自动生成的单独验证函数插入到源码中,形成最后输出的源码级规范,本实施例生成代码为:
Figure BDA0003193077550000112
Figure BDA0003193077550000121
步骤303a:将生成的源码级规范输入到功能性验证工具中,根据规范中单独的验证函数为功能性验证工具调整参数,使其可以完全覆盖函数本身的逻辑分支,并得出功能性验证结果。
根据实施例1的步骤3,在这里对于多模型验证结果进行一致性推理:因为中间层规范经过自动向下映射的功能正确性验证可以保证API规范与代码逻辑的一致性,并且在本实施例中,两条验证分支是从同一个关于invest函数的中间层规范映射而来,从结构上保证了源码端与抽象端的行为一致性,则可得到具有一致性保障的安全验证结果。
实施例3
本实施例在实施例1的基础上:
本实施例提供了一种可双向转换的并发性验证系统,包括:
整合器,用于根据源码API信息与文档功能需求,整合出一种双分支映射的中间层规范;
双向转换器,用于将中间层规范分别映射为抽象过程模型与源码级验证模型,进行并发属性验证与功能性验证;
结果生成器,用于根据并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。
实施例4
本实施例在实施例1的基础上:
本实施例提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现实施例1的可双向转换的并发性验证方法的步骤。其中,计算机程序可以为源代码形式、对象代码形式、可执行文件或者某些中间形式等。
实施例5
本实施例在实施例1的基础上:
本实施例提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现实施例1的可双向转换的并发性验证方法的步骤。其中,计算机程序可以为源代码形式、对象代码形式、可执行文件或者某些中间形式等。存储介质包括:能够携带计算机程序代码的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM)、随机存取存储器(RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,存储介质不包括电载波信号和电信信号。
需要说明的是,对于前述的方法实施例,为了简便描述,故将其表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

Claims (8)

1.一种可双向转换的并发性验证方法,其特征在于,包括以下步骤:
步骤1:基于源码API信息与文档功能需求,整合出一种双分支映射的中间层规范;
步骤2:将所述中间层规范分别自动映射为抽象过程模型与源码级验证模型,进行并发属性验证与功能性验证;
步骤3:根据所述并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。
2.根据权利要求1所述的可双向转换的并发性验证方法,其特征在于,步骤1包括以下子步骤:
步骤101:分析待验证程序中所有的变量,作为所述中间层规范中的行为载体,通过行为载体描述中间层的状态及行为;再确定待验证程序中的主要状态变迁主要依靠的函数,将其设置为FUNCTION元素;
步骤102:隐藏底层具体繁杂的内存状态,引入等价的抽象状态用于表述底层完整功能逻辑,忽略函数变量具体的取值,只考虑相应的状态变迁及变迁条件,描述出函数具体内部逻辑;
步骤103:一次性处理所有的API,通过步骤102转化为所述中间层规范。
3.根据权利要求1所述的可双向转换的并发性验证方法,其特征在于,步骤2包括:
将所述中间层规范自动向上映射为抽象过程模型并进行高层并发属性验证;
将所述中间层规范自动向下映射为源码级验证模型并进行功能性验证。
4.根据权利要求3所述的可双向转换的并发性验证方法,其特征在于,将所述中间层规范自动向上映射为抽象过程模型并进行高层并发属性验证包括以下子步骤:
步骤201:根据所述中间层规范表现出的状态间逻辑关系进行抽象;
步骤202:确定状态间转移条件,形成不同的抽象路径,每条路径包含相应的前置后置状态;
步骤203:对所述中间层规范进行分析,确定路径相关性,将并发的路径并列起来,生成相应的高层规范;
步骤204:根据高层规范得到高层抽象状态机,并参考系统的状态迁移属性,推理出状态迁移合法性规则,编写高层属性规范;
步骤205:依据所述高层抽象状态机中的状态、行为及逻辑信息,形成可用于并发推理的抽象过程模型;并根据所述高层规范与所述高层属性规范,生成并插入并发安全属性语句,最后进行并发属性验证。
5.根据权利要求3所述的可双向转换的并发性验证方法,其特征在于,将所述中间层规范自动向下映射为功能性验证属性并进行功能性验证包括以下子步骤:
步骤301:根据所述中间层规范给出的函数调用关系,抽取函数实现逻辑以及函数内部变量的数据结构和传递条件;
步骤302:根据所述数据结构和传递条件,分析函数应达到的安全标准,将其生成为一个单独的验证函数;
步骤303:将生成的所述验证函数插入到源码中,形成最后输出的源码级规范;
步骤304:将转换输出的所述源码级规范进行功能性验证。
6.一种可双向转换的并发性验证系统,其特征在于,包括:
整合器,用于根据源码API信息与文档功能需求,整合出一种双分支映射的中间层规范;
双向转换器,用于将所述中间层规范分别映射为抽象过程模型与源码级验证模型,进行并发属性验证与功能性验证;
结果生成器,用于根据所述并发属性验证与功能性验证情况,生成具有跨模型逻辑一致性的安全验证结果。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-5任一项所述的可双向转换的并发性验证方法的步骤。
8.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-5任一项所述的可双向转换的并发性验证方法的步骤。
CN202110883422.8A 2021-08-03 2021-08-03 可双向转换的并发性验证方法、系统、设备及存储介质 Active CN113791776B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110883422.8A CN113791776B (zh) 2021-08-03 2021-08-03 可双向转换的并发性验证方法、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110883422.8A CN113791776B (zh) 2021-08-03 2021-08-03 可双向转换的并发性验证方法、系统、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113791776A true CN113791776A (zh) 2021-12-14
CN113791776B CN113791776B (zh) 2023-05-26

Family

ID=79181297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110883422.8A Active CN113791776B (zh) 2021-08-03 2021-08-03 可双向转换的并发性验证方法、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113791776B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8041554B1 (en) * 2007-06-06 2011-10-18 Rockwell Collins, Inc. Method and system for the development of high-assurance microcode
CN106095404A (zh) * 2016-05-29 2016-11-09 淮阴师范学院 一种业务过程模型至服务组成模型的自动模型转换方法
CN106528100A (zh) * 2015-08-05 2017-03-22 通用电气公司 用于安全关键软件开发的基于模型的技术和过程的系统和方法
CN106528407A (zh) * 2016-10-19 2017-03-22 中国航空综合技术研究所 一种嵌入式软件安全性自动化验证系统及其验证方法
CN108563439A (zh) * 2018-04-27 2018-09-21 南京航空航天大学 一种基于中间模型的aadl生成嵌入式系统代码方法
CN109918049A (zh) * 2019-01-12 2019-06-21 西北工业大学 基于形式化验证的软件开发模型的验证方法
US20200117575A1 (en) * 2018-10-12 2020-04-16 Tata Consultancy Services Limited Systems and methods for validating domain specific models
US20200320447A1 (en) * 2019-04-05 2020-10-08 Siemens Corporation Framework for guided change management and change impact analysis with automated change validation through formal executable semantics
CN112463133A (zh) * 2020-12-02 2021-03-09 杭州电子科技大学 一种基于Coq的机器人控制系统时序安全性的验证方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8041554B1 (en) * 2007-06-06 2011-10-18 Rockwell Collins, Inc. Method and system for the development of high-assurance microcode
CN106528100A (zh) * 2015-08-05 2017-03-22 通用电气公司 用于安全关键软件开发的基于模型的技术和过程的系统和方法
CN106095404A (zh) * 2016-05-29 2016-11-09 淮阴师范学院 一种业务过程模型至服务组成模型的自动模型转换方法
CN106528407A (zh) * 2016-10-19 2017-03-22 中国航空综合技术研究所 一种嵌入式软件安全性自动化验证系统及其验证方法
CN108563439A (zh) * 2018-04-27 2018-09-21 南京航空航天大学 一种基于中间模型的aadl生成嵌入式系统代码方法
US20200117575A1 (en) * 2018-10-12 2020-04-16 Tata Consultancy Services Limited Systems and methods for validating domain specific models
CN109918049A (zh) * 2019-01-12 2019-06-21 西北工业大学 基于形式化验证的软件开发模型的验证方法
US20200320447A1 (en) * 2019-04-05 2020-10-08 Siemens Corporation Framework for guided change management and change impact analysis with automated change validation through formal executable semantics
CN112463133A (zh) * 2020-12-02 2021-03-09 杭州电子科技大学 一种基于Coq的机器人控制系统时序安全性的验证方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
BJÖRN BARTELS 等人: "A CSP-based framework for the specification, verification, and implementation of adaptive systems", 《SEAMS \'11: PROCEEDINGS OF THE 6TH INTERNATIONAL SYMPOSIUM ON SOFTWARE ENGINEERING FOR ADAPTIVE AND SELF-MANAGING SYSTEMS》 *
YIZHEN CAO 等人: "Concurrent Software Testing Method Based on CSP and PAT", 《2018 IEEE/ACIS 17TH INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION SCIENCE (ICIS)》 *
庞飞 等人: "可信运行控制软件形式化设计与验证", 《信息技术》 *
赵立飞: "基于TL2软件事务内存机制的并发程序的精化验证", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
高飞 等人: "基于CSP的多线程自动建模及死锁检测研究", 《现代电子技术》 *

Also Published As

Publication number Publication date
CN113791776B (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN112100054B (zh) 一种面向数据管控的程序静态分析方法和系统
US10831456B1 (en) External code integrations within a computing environment
Schäfer et al. An empirical evaluation of using large language models for automated unit test generation
CN111694741B (zh) 一种基于路径深度覆盖的测试用例设计方法
US20140208431A1 (en) Automated tools for building secure software programs
IL97177A (en) Method for creating a consecutive circle
Brahmi et al. Formalise to automate: deployment of a safe and cost-efficient process for avionics software
CN110347588B (zh) 软件验证方法、装置、计算机设备和存储介质
Wu Generating metamodel instances satisfying coverage criteria via SMT solving
CN112767155B (zh) 智能合约安全交易序列生成方法、装置、介质和设备
CN116841564B (zh) 一种数据处理方法、装置、设备以及计算机可读存储介质
CN112860587A (zh) Ui自动测试方法和装置
CN113791776A (zh) 可双向转换的并发性验证方法、系统、设备及存储介质
CN114297063B (zh) 针对源代码的自动化形式化建模与验证的方法与系统
CN115310095A (zh) 一种区块链智能合约混合形式化验证方法及系统
CN112559359B (zh) 一种基于s2ml的安全攸关系统分析与验证方法
Weiß et al. Towards establishing formal verification and inductive code synthesis in the PLC domain
CN117420985B (zh) 一种使用JavaScript封装安卓服务功能的方法
CN117056896B (zh) 一种智能控制系统形式化验证方法及装置
Ferrante et al. A methodology for increasing the efficiency and coverage of model checking and its application to aerospace systems
CN118034661B (zh) 大语言模型智能任务应用系统
Elallaoui et al. Introducing model-driven testing in scrum process using U2TP and AndroMDA
Cansell et al. System-on-chip design by proof-based refinement
CN115373988A (zh) 测试用例的生成方法、测试方法、电子设备及存储介质
Foster et al. Mechanised Theory Engineering in Isabelle.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant