一、反应式系统面向性质测试的方法框架(论文文献综述)
徐楚风[1](2021)在《云平台下面向微服务的高性能API网关设计与实现》文中认为随着互联网的快速发展,微服务架构应用越来越广泛。API网关是微服务系统中流行的组件,客户端的请求调用经过API网关的路由后到达后端服务。API网关可以提高微服务系统的灵活性,减轻运维压力,它将许多公共功能和资源集中起来,减少整个系统的资源占用。API网关作为请求流量的入口,承载了巨大的负载,需要避免成为整个系统的瓶颈,并具备较高的高性能,基于该目标本文设计并实现了一个基于云平台的高性能API网关。本API网关使用非阻塞I/O和反应式编程思想,实现了反应式REST服务器用于接受请求,实现了反应式REST客户端用于发送服务调用请求,这两个组件可以使用极少的线程处理大量的请求调用,是单个API网关实例高性能的基础。除了提供API网关的请求路由、鉴权认证、缓存、负载均衡等基础功能,本API网关还提供了许多能大大增加网关和整个微服务系统性能的功能,例如请求聚合、调用合并、熔断保护等功能。本文基于现有实验室私有云平台,将API网关融入云平台,使API网关集群化,使用Nginx反向代理作为系统唯一入口,以集群方式应对大流量负载。实现了API网关实例自动伸缩和自动更新Nginx upstream,使得系统能够从容应对流量负载的变化,进一步节省人力和系统资源,提升API网关系统的性能。利用云平台使API网关能够不停机更新配置和不停机版本升级,大大增加API网关系统的可靠性。经过功能测试和性能测试,本API网关符合设计目标和需求,相比较现有开源API网关性能有明显提升。
熊家文[2](2020)在《协作式工业控制系统建模、分解及验证技术研究》文中进行了进一步梳理随着国家在工业化发展进程上的不断深入,工业控制系统作为一种过程控制系统,被越来越广泛地应用于各行各业之中。由于工业控制系统通过各类执行机构能够对物理世界产生直接影响,其错误的运行将可能导致严重的安全事故,继而造成较大的经济损失、人员伤亡乃至重大的环境灾难。因此,在正式投入运行之前,其功能正确性、安全性及可靠性必须得到严格的保障。在当前的工业控制系统功能正确性保障工作中,主要采用的还是在设计阶段进行仿真以及在实现后进行测试的方法,但仿真与测试方法难以对系统行为进行深入而全面的考察,尤其对于具备复杂行为的系统,很难提供完备而严格的保障。因此,部分学者尝试引入形式化验证技术。但由于形式化验证技术具有较高的使用门槛,其实际应用并不广泛。且由于目前形式化验证技术存在一定的不足,大多数的现有工作都只关注了单个功能模块或程序的验证,而无法对多个任务协同的工业控制系统整体进行验证。而且,伴随着控制器技术、网络技术的发展,工业控制系统逐步从简单的单控制器控制系统发展为多控制器的分布式工业控制系统、现场总线工业控制系统乃至基于工业以太网的协作式工业控制系统,其复杂性日益提升,其功能正确性保障工作将面临更大的挑战,过去的方法将变得更加难以适用。因此,为了提高现代工业控制系统的功能正确性保障能力,本论文针对协作式工业控制系统,从设计方法及验证方法两方面,提出了两项功能安全性保障方法。首先提出了一套建模、分解方法,支持复杂工业控制系统的控制功能集中建模与特定资源约束条件下的自动分解,帮助用户以全局视角设计具备复杂交互关系的协作式工业控制系统,从而避免人为设计过程中可能引入的错误;其次提出了一种用户友好的轻量级形式化性质验证方法,从而方便用户对实现后的协作式工业控制系统进行快速性质考察;特别地,由于其基于系统运行日志的工作特性,在复杂控制系统的验证方面具有独特的优势。通过这两方面的功能正确性保障方法的辅助,工程师可以更加高效地开发出可靠的协作式工业控制系统。在创新性工作方面,具体包括了以下四个部分:1.提出了一种支持协作关系描述以及设备资源约束关系描述的建模语言CICSML,以支持协作式工业控制系统控制功能的统一抽象建模。该语言考虑了IEC 61131-3标准中描述的工业控制器软件特性,借鉴了结构化文本编程语言的语法,与工业控制系统软件实现存在较为直接的对应关系,可以轻松地转换为具体的实现代码。2.在建模语言的基础之上,提出了一种特定设备资源约束下的模型分解方法。该分解方法能够将单控制器复杂系统模型,按照给定设备资源约束,自动分解为多控制器的简单子系统模型集合。这些子系统模型通过自动生成的交互机制进行协作,共享给定的设备资源,从而形成多控制器协同的协作式工业控制系统。3.提出了一套轻量级的协作式工业控制系统形式化性质验证方法,主要结合工业控制程序仿真技术及规范挖掘技术,将形式化性质的验证过程从主动变为被动,从而极大地降低了复杂工业控制系统形式化性质验证的门槛。4.另外,提出了一种带过去时态的线性时态逻辑规范挖掘方法,改善了目标性质规范的表达能力,进一步增强了该轻量级性质验证方法。
袁胜浩[3](2020)在《同步语言多线程代码生成方法及语义保持证明研究》文中认为航空航天等安全关键领域中的实时嵌入式系统一般被称为安全关键系统,因为这类系统发生故障或失效将造成严重的灾难性后果。目前,工业界广泛认为基于模型驱动(尤其是形式化模型驱动)的安全关键系统开发方法是一种切实可行的重要手段。其中,基于模型的代码生成及其语义保持有助于保障这类系统开发过程的安全可靠。随着安全关键系统的功能需求日益复杂,单核处理器平台难以满足这类系统对计算性能的要求,因此在性能、体积、重量和功耗(SWa P)特性等方面更具优势的多核平台将广泛应用于安全关键领域。同步语言是一类非常适合安全关键系统建模的形式化语言。随着在安全关键系统中应用多核平台成为一种趋势,具有多时钟特性的多态同步语言(如SIGNAL)受到更多关注。目前同步语言SIGNAL编译器支持串行代码生成和仿真实验,较少关注多线程代码生成。此外SIGNAL编译器较少关注代码生成的语义一致性。因此,本文提出一种同步语言SIGNAL的多线程代码生成及语义保持证明方法,主要工作包括:1.提出一种基于同步语言SIGNAL的多线程代码生成方法。具体包括程序标准化(涉及词法/语法分析)、时钟演算、任务划分和多线程代码生成四个步骤。其中,在任务划分阶段,本文提出三种任务划分策略以适用于不同应用场景,分别为基本任务划分策略、基于拓扑结构的任务划分策略和基于深度优先的任务划分策略。在多线程代码生成阶段,为适应不同安全关键系统软硬件架构,代码生成阶段分为平台无关的虚拟多任务结构生成和平台相关的多线程代码生成,并且支持多种目标语言如Ada,Java,C。2.提出一种同步语言SINGAL多线程代码生成的语义保持证明方法。具体包括形式化定义代码生成中出现的多个中间语言的操作语义、形式化描述代码生成过程中算法和映射规则、证明中间模型保留源SIGNAL模型的语言特性(程序终止性、确定性并发)和基于互模拟等价思想证明经过时钟演算后的SIGNAL程序和翻译后的目标C程序的语义一致性。3.基于实际工业界案例(航天领域)导航、制导与控制系统GNC进行案例分析。包括通过GNC系统的SINGAL模型验证本文所提多线程代码生成方法的有效性,并通过多核平台上的实验分析得到以下结论:在SIGNAL模型中同步通信较少时,基于深度优先的任务划分策略生成的目标程序执行效率更高;而在同步通信较多时,基于拓扑结构的任务划分策略生成的目标程序执行效率更高。本文基于高安全的函数式语言OCaml实现了同步语言SIGNAL多线程代码生成原型工具,采用插件开发技术集成到Eclipse平台上,并在辅助定理证明工具Coq中进行了多线程代码生成过程的语义一致性证明。最后通过实际工业界案例验证了本文所提方法的有效性。
冯思喆[4](2020)在《基于求精的AADL模型Ada代码生成方法研究》文中提出安全关键软件广泛应用于航空电子、航天器、武器装备以及轨道交通等领域,这类软件具有高安全、资源受限、实时响应等特点。基于AADL(Architecture Analysis and Design Language)的模型驱动开发方法在安全关键软件领域得到广泛应用。基于AADL模型的代码自动生成是该领域的一个重要研究内容。针对安全关键软件而言,生成的代码往往运行在各种嵌入式平台上,例如实时操作系统、硬件平台、总线通信等。已有研究主要是在代码生成器中以硬编码或配置的方式加入平台相关信息,从而生成工业界需要的代码。然而这种方式存在的问题是:生成的代码和AADL模型之间存在较大的语义距离(Semantics Gap)。例如,在AADL模型上验证了该模型满足可调度性等非功能性质,但由于这类时间性质往往和硬件平台相关,而平台相关信息又是在模型分析之后由代码生成器加入进去的,导致生成的代码有可能不满足可调度性,时间性质并没有得到保持。因此,本文提出了一种基于求精的AADL模型Ada代码生成方法,即先对模型进行求精,得到求精模型之后,进行非功能属性分析,然后再进行代码生成。本文主要贡献如下:首先,提出面向安全关键软件的AADL模型求精方法。该方法包括求精框架、求精步骤、求精场景和求精规则。一个AADL模型求精过程由多个求精步骤组成,我们基于求精场景来表达一个具体的求精的步骤,而求精规则是用表达具体求精的方式。通过对模型的求精,为其提供了更精确的非功能属性分析能力,缩小模型与生成代码之间的语义距离。其次,给出了面向AADL求精模型的Ada代码自动生成方法。该方法包括平台无关代码生成规则与平台相关代码生成规则两部分。代码的自动生成可以有效保持模型验证过的性质,并且减少手工编码带来的错误。最后,设计并实现了基于求精的AADL模型代码生成原型工具MACAADL2Ada,通过工业界实际案例即卫星姿态轨道控制系统对本文的方法进行分析,验证了本文方法的有效性;同时对案例生成的代码进行了测试与仿真,以说明生成代码的正确性。
韩笑[5](2020)在《基于模型的高速铁路列车运行控制系统安全测试方法研究》文中认为先进的计算机技术、通信技术和控制方法在列车运行控制系统(简称列控系统)中的应用提高了铁路运输的效率和安全性,但新技术的应用也为系统带来了新的安全特征。一方面,列控系统需要在硬件设备正常工作时正确执行其安全功能以保障控制策略的正确实施;另一方面,列控系统需要在硬件发生故障以后及时采取应对措施以防止危险的发生。如何对列控系统进行测试以验证其安全性能,发现系统可能存在的安全缺陷,是保障铁路运输安全的重要研究课题。本文主要针对列控系统的反应式特征、混成特性、输入域不可穷举和分布式特征等技术特点,关注系统在安全相关功能的一致性测试和硬件故障状态下的安全测试,研究其测试案例的生成问题。针对列控系统安全相关功能的一致性测试,现有研究主要采用基于离散模型或者实时模型生成测试案例的方法,其参考模型无法描述列控系统的混成特性,因而无法验证列控系统和列车组成的闭环系统是否满足安全性,同时缺乏对参考模型充分性的分析论证,此外还缺乏为提高测试效率而针对关键控制逻辑进行测试的测试套件优化方法研究。针对这些问题,本文提出了基于HCSP(Hybrid CSP)的列控系统安全测试案例生成方法,用能描述混成行为的HCSP模型作为参考模型,生成安全功能一致性测试案例。针对硬件故障状态下的安全测试,现有研究主要采用对集成了故障行为信息和正常行为信息的模型进行模型检查以生成测试案例的方法,所使用的模型主要为离散模型,不能描述列控系统和列车组成的闭环系统的混成行为,其次在模型集成中忽略了不同信息之间的兼容性问题。针对这些问题,本文提出了列控系统硬件故障状态下基于HCSP的安全测试案例生成方法,通过模型集成构建HCSP故障影响模型,并以此生成可以激发列控系统危险行为的危险诱导输入序列。论文的主要创新点如下:1.提出了基于HCSP的列控系统安全测试参考模型构建与验证方法。将STAMP理论与AG推理(Assume-Guarantee Reasoning)相结合,借助安全控制结构分析组件的耦合关系,解决了AG推理中组件划分的难点;通过组合验证的方式实现了列控系统HCSP模型的验证以说明其合理性,简化了对HCSP模型的定理证明过程;通过场景分析以构建参考模型,确保了模型的充分性。2.提出基于HCSP参考模型的列控系统安全功能一致性测试案例生成方法。通过定义HCSP的子集RHCSP及其STS语义,填补了以HCSP作为参考模型时利用基于I/O等价类划分的测试方法生成测试案例的空白;在此基础上提出基于安全性质静态分析的完备安全测试套件生成方法,通过消除无用和冗余的测试案例,在实验中最多减少了约95%的测试案例而没有明显降低测试质量,说明方法能显着提高安全功能一致性测试的测试效率。3.提出基于时间自动机的输入约束条件描述和求解方法。利用时间自动机来描述输入约束条件以及输入序列集合,并通过模型检查找到输入序列集合中满足输入约束条件的输入序列,弥补了基于I/O等价类划分的测试方法中无法考虑复杂输入约束条件的缺陷。4.提出列控系统硬件故障状态下基于HCSP的安全测试案例生成方法。利用对故障影响模型进行模型检查的思路来生成危险诱导输入序列,在故障影响模型的自动生成中通过引入本体论消除了不同信息的兼容性问题,定义HCSP向时间自动机的转换函数以实现对HCSP的模型检查。在实验中,该方法测出了基于结构覆盖的测试方法没有发现的安全缺陷,证明了方法对列控系统硬件故障状态下的安全测试有效。
徐寒冰[6](2019)在《一个面向时序规约模式的工控规约引导和PLC程序生成工具》文中研究说明可编程逻辑控制器(PLC)是一种被广泛应用于工业控制领域的反应式系统。目前从业人员编写PLC程序主要依靠个人经验,需求漏洞、程序错误等情况难以避免。针对这一问题,本文从系统规约的规范化和程序自动生成两个方面进行进行探索,以提高反应式系统的正确性。使用规范化的语言对系统需求进行描述,可以显着提高开发过程中需求的可读性和准确性。Matthew B.Dwyer等人提出的规约模式系统(SPS)将反应式系统中常见的场景分析归纳,抽取出特定的模式,以接近自然语言的形式对场景进行描述,在时序表达方面有着较强的能力。但对包含大量实时控制需求的PLC系统,目前使用SPS进行规约描述的研究仍不够完善,描述能力较差,缺乏实用价值。在PLC程序生成领域,现有方法大多要求先对系统进行手工建模,再通过模型生成PLC程序,这对PLC从业人员存在较大难度;或虽然可以直接根据规约,通过模型验证和博弈论的方法,自动生成PLC程序,但所生成的代码规模为指数级,且不符合PLC从业人员的开发习惯,可理解和可维护性较差。本文对PLC系统在实际应用中的案例进行归纳分析,抽取出实时场景中出现的控制模式,将SPS进行了针对性的修改和扩展,提出了新的规约模式系统SPS4PLC(Specification Patterns System for PLC)。SPS4PLC采用接近自然语言的表述方式,有能力对包含时序和实时控制需求的PLC系统进行规约描述。本文给出了SPS4PLC的语法定义、语义解释,并提供了一个问题树,用于交互式地引导使用者选择正确的模式,对控制需求进行描述。本文提出了从SPS4PLC规约到PLC程序的生成方法。针对SPS4PLC中的每个模式,本文给出了符合PLC从业人员习惯的程序生成规则,用于生成单条规约的PLC程序片段;再通过组合规则,对复杂命题、控制冲突和规约的依赖关系进行处理,生成符合系统需求的完整PLC程序。对于PLC程序的生成规则和组合规则,本文给出了正确性证明。本文设计并实现了PLC程序生成工具SpsToPlc,可以根据SPS4PLC规约,生成PLC指令表程序,在生成过程中以交互方式消除冲突,并提供了规约书写引导功能。通过对大量实际案例中出现的控制需求进行分析,我们发现SPS4PLC在实际应用中具有良好的表达能力,通过适当的模式选择,以及组合状态的使用,可以表达PLC教材中常见的对布尔量时序和实时控制的典型案例。基于本文提出的方法,PLC程序生成工具SpsToPlc生成的IL代码符合规约所描述的系统需求,代码规模与规约的规模呈线性关系,且符合PLC开发者的编写习惯,易于理解和维护。
韩冰倩[7](2019)在《基于SCADE的联锁列控一体化系统研究与实现》文中研究表明在我国铁路相关技术飞速进步的背景下,信号系统集成化已经成为轨道交通发展的主流,联锁和列控中心作为列车运行控制系统中的关键设备,担负着保障行车安全的重要职责,因此对联锁列控一体化系统的研究具有十分重要的现实意义。一体化系统是安全关键系统,必须满足SIL-4级安全需求,利用传统的开发方式进行开发,难度较大而且很难发现潜在错误及安全隐患。高安全性应用开发环境(Safety Critical Application Development Environment,SCADE)为关键系统及软件开发人员提供完整的基于模型的嵌入式开发解决方案,以此来降低开发成本及开发风险、减少验证的时间。本文基于SCADE对一体化系统进行研究与实现,通过对一体化系统功能模块进行模型设计及仿真验证,确保系统功能正确实现。论文的主要研究内容如下:(1)研究基于SCADE开发环境的软件开发方法,详细阐述SCADE理论基础和“Y”型开发流程,进一步分析SCADE数据流图的建模方法并提出基于SCADE的一体化系统研究流程。(2)分析CTCS-2及CTCS-3级列控系统下联锁及列控中心的系统原理及外部接口,比较两控制系统的相似之处及差异,探讨将联锁和列控中心进行一体化的可行性并提出具体的一体化系统设计方案。(3)完成一体化应用软件设计,包括软件结构、功能模块划分及数据结构,搭建一体化应用软件的整体架构,并对功能模块进行SCADE模型设计。(4)使用SCADE仿真与验证工具完成已建立模型的仿真及覆盖率分析,验证模型的正确性,并通过代码生成器自动生成面向工程的C代码;详细演示一体化系统的典型场景并进行分析,验证典型场景的有效性,表明设计的系统满足预期的功能要求。经验证,使用SCADE开发方法对一体化系统进行开发,可以满足一体化系统对安全性的严苛要求,因此,SCADE在列控系统软件开发中有着良好的应用前景。图70幅,表27个,参考文献40篇。
张元睿[8](2019)在《面向同步系统的时钟约束动态逻辑系统研究》文中进行了进一步梳理实时系统、嵌入式系统等反应式系统(Reactive Systems)往往具有“同步”特性,即模块间通信时间可忽略不计,同一时刻多个信号可同时发生.同步系统模型作为同步编程语言(如Esterel、Signal等)的基础,被广泛应用于反应式系统,特别是嵌入式系统的建模中.随着近年来物联网、信息物理系统等分布式实时嵌入式系统的蓬勃发展,同步系统的建模、规约与验证变得愈发重要.在同步系统中,基于“时钟约束”的系统规约在系统的安全性和可靠性方面扮演着关键角色.时钟约束规约语言(Clock Constraint Specification Language,简称CCSL)是一种基于“时钟”和时钟约束关系的形式化规约语言.它被广泛地应用于同步系统的规约与验证.以往CCSL规约的验证技术主要基于模型检测.由于模型检测技术的局限性,这些验证技术不支持无限状态CCSL规约(亦称为“非安全”CCSL规约)的验证.对于状态空间较大的系统,基于模型检测的验证技术存在状态空间爆炸的问题.动态逻辑(Dynamic Logic,简称DL)是一种对程序动态行为进行刻画和推理的模态逻辑,其验证技术主要基于定理证明和SMT检测.动态逻辑程序能(在抽象层)对系统行为进行建模,并配合动态逻辑公式对系统性质进行规约和验证.相较于基于模型检测的验证技术,基于定理证明的验证技术能够对无限状态系统进行验证,并从验证方法上避免了对状态空间的搜索.本文结合CCSL语言与动态逻辑DL,提出了一种基于时钟约束的动态逻辑(Clock-constraint-based Dynamic Logic,简称CDL)系统,将动态逻辑应用于同步系统的建模与验证中.CDL逻辑系统支持对同步系统建模,对基于时钟约束关系的同步系统CCSL规约进行刻画和验证;支持基于定理证明的“模块化”验证方法,能对“非安全”的CCSL规约进行验证.该系统为同步系统提供了一个基于定理证明技术的建模/验证框架.本文的主要贡献如下:1.提出了面向顺序程序的时钟约束动态逻辑(Sequential CDL,简称sCDL),定义了其语法和语义,并构建了sCDL证明系统.sCDL逻辑系统在一阶动态逻辑(First-Order Dynamic Logic,简称FODL)系统的基础上,引入了“信号”和“CCSL时钟关系”并对其证明系统进行了扩展.sCDL逻辑系统支持对顺序同步系统行为进行建模,对顺序同步系统中一类“简单的”CCSL时钟约束关系进行刻画和验证.2.对sCDL逻辑进行“并行程序”的扩展,提出了时钟约束动态逻辑CDL,定义了其语法和语义,并构建了其证明系统.CDL逻辑在sCDL逻辑的基础上,引入了“并行算子”和“并行交互机制”,并对sCDL的证明系统进行了扩展.CDL逻辑实现了对(并行)同步系统行为进行建模,对基于时钟约束关系的同步系统CCSL规约进行刻画和验证.3.对CDL逻辑证明系统的可靠性和完备性进行分析,并证明了CDL逻辑证明系统的可靠性和相对完备性定理.4.通过两个同步系统案例——数字滤波器和车载自动窗系统,分析了CDL逻辑在同步系统中的应用.用CDL逻辑对同步系统进行了建模,描述并证明了它们的CCSL规约.结果表明了论文提出的方法是合理和有效的.
于斌[9](2019)在《MSVL程序的高效运行时验证方法研究》文中研究指明建模仿真验证语言(Modeling,Simulation and Verification Language,简称MSVL)是一种时序逻辑程序设计语言,是投影时序逻辑(Projection Temporal Logic,简称PTL)的可执行子集,其包含丰富的数据结构、函数调用以及同步和异步通信机制,已成功应用于并发系统、反应式系统和嵌入式实时系统的模型描述、路径仿真和形式化验证。作为PTL的命题形式,命题投影时序逻辑(Propositional PTL,简称PPTL)具有完全正则表达能力,能够方便地对顺序、并行、区间相关和周期重复的性质进行描述。基于统一的PTL逻辑框架,现有的方法已经实现了对MSVL程序的运行时验证,用于检测程序的动态执行轨迹是否满足期望的PPTL性质。然而,目前的验证方法存在一些不足:首先,针对单条执行路径的时序逻辑性质验证,没有充分利用当前已经广泛普及的多核设备和分布式网络,导致验证效率不高;其次,针对程序执行中分配的内存区域,没有进行动态追踪,使得程序中存在的内存泄漏问题无法被及时发现;最后,针对含有分支路径的时序逻辑性质验证,不能保证发现的反例是所有路径中最短的,导致验证过程需要探索更多的状态空间。为了解决以上问题,本文围绕MSVL程序的高效运行时验证展开,主要工作概括如下:首先,提出了基于单机多核系统的MSVL程序并行运行时验证方法。该方法将程序执行生成的状态序列分为若干个被同时验证的片段,每个片段由一个线程池负责,线程池中的多个线程同时对一个片段进行验证,当一定数目的片段被验证后,这些片段的验证结果会被及时汇总以检测能否得到最终的验证结果。基于LLVM平台,开发了验证器PPTLCheck,实验结果表明相较于目前的验证工具,PPTLCheck的验证效率更高,并适用于大规模程序的完全正则性质的验证。作为验证实例,研究了多线程程序中多个子线程是否正确交替执行的验证问题,在对问题进行建模和性质描述后,使用PPTLCheck工具对多线程程序的动态执行进行验证。然后,提出了基于分布式网络的MSVL程序并行运行时验证方法。该方法利用分布式网络中性能各异的多核机器对程序执行产生的状态序列片段同时进行验证,在每台机器中,一个片段进而又被分为若干个能够被并行验证的子片段。为了多台机器高效合作,建立了用于消息传递的通信机制和任务分配的调度机制,并给出了一种自适应算法以自动调节不同机器中验证线程的数量。开发了基于局域网的PPTLCheck+工具,实验结果表明,PPTLCheck+比PPTLCheck具有更高的验证效率。作为验证实例,研究了SQLite3数据库提供的API在调用过程中是否符合规范的验证问题,为此,开发了SQLite3Check工具,其通过分析网页上描述的API调用规范,得到相应的PPTL公式描述后,使用PPTLCheck+对调用SQLite3数据库API的程序进行检测。进而,提出了针对MSVL程序内存泄漏的运行时检测方法。该方法采用动态符号执行技术尽可能多地运行程序的不同路径,在每条路径的执行过程中,后端检测器跟踪每个被访问的动态分配的内存块,计算指向每个内存块的指针数量,判断其是否发生泄露,并记录内存泄露位置和指向每个泄露内存块的变量变化情况,在程序执行后,将相应的内存释放语句添加到代码合适位置。基于KLEE工具和MSVL编译器,开发了DEF LEAK工具,实验结果表明,DEF LEAK能够发现更多的内存泄露,并更有效地帮助开发人员理解泄露发生的原因以安全修复内存泄露。最后,提出了含有非确定选择语句的MSVL程序的统一限界运行时验证方法。该方法基于MSVL的统一运行时验证方法和PPTL限界语义,构造深度递增的有界带标记的范式图(Bounded Labeled Normal Form Graph,简称BLNFG),以发现所有分支上违反性质的最短前缀,在资源有限或者不要求整个路径满足性质的情况下,该方法可用于说明在一定的搜索深度内,程序中不存在反例路径。以经典的互斥问题、哲学家就餐问题和银行家算法为案例,说明了所提验证方法对实际问题的有效性。
王戟,詹乃军,冯新宇,刘志明[10](2019)在《形式化方法概貌》文中提出形式化方法是基于严格数学基础,对计算机硬件和软件系统进行描述、开发和验证的技术.其数学基础建立在形式语言、语义和推理证明三位一体的形式逻辑系统之上.形式化方法已经以不同程度和不同方式愈来愈多地应用在计算系统生命周期的各个阶段.介绍了形式化方法的发展历程和基本方法体系;以形式规约和形式验证为主线,综述了形式化方法的理论、方法、工具和应用的现状,展示了形式化方法与软件学科其他领域的交叉和融合;分析了形式化方法的启示,并展望了其面临的发展机遇和未来趋势.形式化方法的发展和研究现状表明:其应用已经取得了长足的进步,在提高计算系统的可靠性和安全性方面发挥了重要作用.在当今软件日益成为社会基础设施的时代,形式化方法将与人工智能、网络空间安全、量子计算、生物计算等领域和方向交叉融合,得到更加广阔的应用.研究和建立这种交叉融合的理论和方法不仅重要,而且具有挑战性.
二、反应式系统面向性质测试的方法框架(论文开题报告)
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
三、反应式系统面向性质测试的方法框架(论文提纲范文)
(1)云平台下面向微服务的高性能API网关设计与实现(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 研究背景和意义 |
1.2 国内外研究现状 |
1.3 本论文主要工作 |
1.4 本论文的组织结构 |
第二章 相关技术介绍 |
2.1 Netty框架 |
2.2 反应式 |
2.1.1 反应式系统 |
2.1.2 反应式编程 |
2.1.3 Reactive Streams |
2.1.4 Project Reactor |
2.3 微服务架构 |
2.4 REST API |
2.5 云平台 |
2.6 高性能系统解决方案 |
2.7 本章小结 |
第三章 需求分析与概要设计 |
3.1 需求分析 |
3.1.1 功能需求 |
3.1.2 非功能需求 |
3.2 系统总体架构设计 |
3.3 服务注册发现模块概要设计 |
3.3.1 Zookeeper注册中心 |
3.3.2 Redis注册中心 |
3.4 请求接入模块概要设计 |
3.4.1 反应式REST服务器 |
3.4.2 鉴权认证 |
3.4.3 请求聚合 |
3.4.4 缓存功能 |
3.4.5 请求路由 |
3.5 服务调用模块概要设计 |
3.5.1 反应式REST客户端 |
3.5.2 负载均衡 |
3.5.3 调用合并 |
3.5.4 熔断保护 |
3.6 云平台网关服务模块概要设计 |
3.6.1 动态upstream服务 |
3.6.2 网关动态更新 |
3.6.3 自动弹性伸缩 |
3.7 本章小结 |
第四章 详细设计与实现 |
4.1 服务注册发现模块 |
4.1.1 Zookeeper注册中心 |
4.1.2 Redis注册中心 |
4.2 请求接入模块 |
4.2.1 反应式REST服务器 |
4.2.2 鉴权认证 |
4.2.3 请求聚合 |
4.2.4 缓存功能 |
4.2.5 请求路由 |
4.3 服务调用模块 |
4.3.1 反应式REST客户端 |
4.3.2 负载均衡 |
4.3.3 调用合并 |
4.3.4 熔断保护 |
4.4 云平台网关服务功能模块 |
4.4.1 动态upstream服务 |
4.4.2 网关动态更新 |
4.4.3 自动弹性伸缩 |
4.5 本章小结 |
第五章 系统测试 |
5.1 测试环境 |
5.2 功能测试 |
5.2.1 服务注册发现测试 |
5.2.2 请求接入测试 |
5.2.3 服务调用测试 |
5.2.4 云平台网关服务测试 |
5.3 性能测试 |
5.3.1 单个网关实例性能测试 |
5.3.2 网关系统性能测试 |
5.4 本章小结 |
第六章 总结与展望 |
6.1 全文总结 |
6.2 后续工作展望 |
致谢 |
参考文献 |
(2)协作式工业控制系统建模、分解及验证技术研究(论文提纲范文)
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 研究背景 |
1.2 问题与挑战 |
1.2.1 工业控制系统的安全性问题 |
1.2.2 工业控制系统的复杂性挑战 |
1.3 国内外研究现状及相关工作 |
1.3.1 工业控制系统验证方面的相关研究 |
1.3.2 系统设计开发方法方面的相关研究 |
1.4 本文的主要工作及贡献 |
1.5 本文的组织结构 |
第二章 基本概念及准备知识 |
2.1 IEC 61131-3 标准 |
2.1.1 IEC 61131 标准 |
2.1.2 可编程逻辑控制器 |
2.1.3 IEC 61131-3 软件模型 |
2.1.4 PLC运行机制 |
2.1.5 PLC编程语言 |
2.2 程序切片技术 |
2.2.1 程序切片原理 |
2.2.2 程序切片简单示例 |
2.3 模型检测技术 |
2.3.1 模型检测的基本流程 |
2.3.2 模型检测简单示例 |
2.4 本章小结 |
第三章 协作式工业控制系统建模语言 |
3.1 设计动机与要求 |
3.2 CICSML建模语言 |
3.2.1 设计思想 |
3.2.2 基本概念 |
3.2.3 抽象语法 |
3.3 CICSML建模 |
3.3.1 建模流程 |
3.3.2 建模案例 |
3.4 本章小结 |
第四章 协作式工业控制系统模型分解方法 |
4.1 概要说明 |
4.2 分解可行性判定 |
4.3 资源分配 |
4.4 模型拆分方法 |
4.4.1 问题分析 |
4.4.2 任务拆分算法 |
4.5 模型协作关系生成方法 |
4.5.1 协作原理 |
4.5.2 通信语句生成方法 |
4.6 应用案例 |
4.6.1 集中建模 |
4.6.2 模型分解 |
4.6.3 协作关系分析 |
4.7 本章小结 |
第五章 基于性质规范挖掘的轻量级验证方法 |
5.1 引言 |
5.2 验证方法 |
5.2.1 基本形式 |
5.2.2 迭代验证流程 |
5.3 工具实现 |
5.4 应用案例 |
5.4.1 简单示例 1:转换开关 |
5.4.2 简单示例 2:两数排序 |
5.4.3 实例研究 |
5.4.4 性能评估 |
5.5 讨论:与传统验证方法对比 |
5.5.1 与仿真和测试相比 |
5.5.2 与模型检测相比 |
5.6 局限性 |
5.6.1 方法自身的局限性 |
5.6.2 当前实现的局限性 |
5.7 本章小结 |
第六章 带过去时态的线性时态逻辑规范挖掘方法 |
6.1 简介 |
6.2 带过去时态的线性时态逻辑 |
6.2.1 带过去时态的线性时态逻辑语法 |
6.2.2 带过去时态的线性时态逻辑的限界语义 |
6.2.3 对比一般纯未来时态的线性时态逻辑 |
6.3 挖掘方法 |
6.3.1 方法概要 |
6.3.2 核心算法 |
6.4 优化策略 |
6.4.1 公共子结构缓存加速策略 |
6.4.2 并行加速策略 |
6.5 工具实现与评估 |
6.6 本章小结 |
第七章 总结与展望 |
7.1 本文工作总结 |
7.2 不足之处与未来工作展望 |
附录A 语法定义 |
A.1 CICSML的ANTLR语法定义 |
A.2 带过去时态的线性时态逻辑的ANTLR语法定义 |
参考文献 |
致谢 |
攻读博士学位期间发表论文和科研情况 |
(3)同步语言多线程代码生成方法及语义保持证明研究(论文提纲范文)
摘要 |
abstract |
略缩词 |
第一章 绪论 |
1.1 课题研究背景 |
1.2 研究现状及选题依据 |
1.2.1 同步语言多线程代码生成研究现状 |
1.2.2 编译器验证研究现状 |
1.2.3 选题依据 |
1.3 论文组织结构 |
第二章 相关知识 |
2.1 同步语言概述 |
2.2 定理证明工具Coq |
2.3 OCaml词法语法分析命令 |
2.4 基于 SIGNAL 的多线程代码生成及语义保持证明方法框架 |
2.5 本章小结 |
第三章 基于SIGNAL的多线程代码生成方法 |
3.1 多线程代码生成方法整体框架 |
3.2 SIGNAL程序标准化 |
3.2.1 词法语法分析 |
3.2.2 标准化原则 |
3.3 时钟演算 |
3.3.1 clockedSIGNAL抽象语法 |
3.3.2 时钟消解原则 |
3.4 任务划分 |
3.4.1 基本任务划分策略 |
3.4.2 基于拓扑结构的任务划分策略 |
3.4.3 基于深度优先的任务划分策略 |
3.5 代码生成 |
3.5.1 虚拟多任务结构 |
3.5.2 多线程Ada生成方法 |
3.5.3 多线程C生成方法 |
3.5.4 多线程Java生成方法 |
3.6 本章小结 |
第四章 基于SIGNAL多线程代码生成过程的语义保持证明方法 |
4.1 语义保持证明方法整体框架 |
4.2 中间语言形式语义 |
4.2.1 符号约定和基本定义 |
4.2.2 kSIGNAL操作语义 |
4.2.3 clockedSIGNAL语义 |
4.2.4 C子集语义 |
4.3 语义保持证明方法 |
4.3.1 语义保持性质 |
4.3.2 kSIGNAL2clockedSIGNAL性质证明 |
4.3.3 clockedSIGNAL2C语义保持 |
4.4 本章小结 |
第五章 工具实现及工业界案例分析 |
5.1 工具实现 |
5.1.1 SIGNAL多线程代码生成原型工具 |
5.1.2 语义保持证明检查 |
5.2 基于GNC系统的工业界案例分析 |
5.2.1 GNC概述 |
5.2.2 消初偏模式代码生成 |
5.2.3 多核实验 |
5.3 本章小结 |
第六章 总结与展望 |
6.1 论文工作总结 |
6.2 未来工作展望 |
参考文献 |
致谢 |
在学期间的研究成果及发表的学术论文 |
附录 |
(4)基于求精的AADL模型Ada代码生成方法研究(论文提纲范文)
摘要 |
abstract |
缩略词 |
第一章 绪论 |
1.1 课题研究背景 |
1.2 研究现状及选题依据 |
1.2.1 研究现状 |
1.2.2 选题依据 |
1.3 论文组织结构 |
第二章 基于求精的AADL模型Ada代码生成方法 |
2.1 模型驱动开发方法及相关技术概述 |
2.2 AADL语言及其行为附件概述 |
2.1.1 AADL概述 |
2.1.2 AADL行为附件概述 |
2.1.3 AADL属性集 |
2.3 AADL模型求精 |
2.4 AADL代码自动生成 |
2.5 Ada语言介绍 |
2.6 基于求精的AADL模型Ada代码生成框架 |
2.7 本章小结 |
第三章 面向安全关键软件的AADL模型求精方法 |
3.1 求精框架概述及定义 |
3.2 面向平台无关的求精规则 |
3.2.1 AADL扩展子程序调用求精 |
3.2.2 线程构件下的模式变换求精 |
3.2.3 周期线程合并求精 |
3.2.4 线程行为附件求精 |
3.3 面向平台相关的求精规则 |
3.3.1 设备驱动模型求精 |
3.3.2 远程通信求精 |
3.3.3 基于本地线程端口通信求精 |
3.3.4 任务调度求精 |
3.3.5 面向中断线程的求精 |
3.4 基于求精的非功能属性分析 |
3.5 本章小结 |
第四章 面向AADL求精模型的Ada代码生成方法 |
4.1 平台无关功能型代码生成 |
4.1.1 系统构件映射规则 |
4.1.2 进程构件映射规则 |
4.1.3 线程构件映射规则 |
4.1.4 子程序构件映射规则 |
4.1.5 行为附件映射规则 |
4.1.6 数据构件映射规则 |
4.2 平台相关代码生成 |
4.2.1 数据部分转换 |
4.2.2 行为部分转换 |
4.3 本章小结 |
第五章 工具实现与案例分析 |
5.1 MACAADL2Ada工具设计与实现 |
5.1.1 MACAADL2Ada工具总体设计 |
5.1.2 AADL2RAADL模型求精模块 |
5.1.3 RAADL2Ada代码生成模块 |
5.2 案例分析 |
5.2.1 案例介绍与AADL建模 |
5.2.2 案例模型求精 |
5.2.3 Ada代码生成 |
5.2.4 代码测试与分析 |
5.2.5 本章小结 |
第六章 总结与展望 |
6.1 论文工作总结 |
6.2 进一步研究方向 |
参考文献 |
致谢 |
在学期间的研究成果及发表的学术论文 |
(5)基于模型的高速铁路列车运行控制系统安全测试方法研究(论文提纲范文)
致谢 |
中文摘要 |
ABSTRACT |
术语表 |
1 引言 |
1.1 研究背景 |
1.2 CTCS-3级列车运行控制系统的特征 |
1.2.1 安全特征 |
1.2.2 技术特征 |
1.3 列控系统安全测试案例生成方法研究现状 |
1.3.1 列控系统测试案例生成方法概述 |
1.3.2 列控系统安全测试案例生成方法 |
1.3.3 列控系统形式化建模与验证方法 |
1.3.4 列控系统安全测试案例生成遇到的挑战 |
1.4 其它典型安全苛求系统的安全测试案例生成方法综述 |
1.4.1 安全测试概述 |
1.4.2 安全功能一致性测试案例生成方法研究现状 |
1.4.3 硬件故障状态下测试案例生成方法研究现状 |
1.5 选题意义 |
1.6 研究内容和篇章结构 |
2 基于HCSP的列控系统安全测试参考模型构建与验证方法 |
2.1 安全控制系统的建模与验证框架 |
2.1.1 STAMP安全致因模型 |
2.1.2 基于安全控制结构的形式化建模框架 |
2.1.3 基于AG推理的安全约束验证 |
2.2 建模与验证框架的HCSP实现 |
2.2.1 HCSP语法和语义 |
2.2.2 HCSP模型的验证 |
2.2.3 建模验证框架相关概念的HCSP实现 |
2.3 基于场景分析的CTCS-3级列控系统安全测试参考模型构建 |
2.4 案例研究 |
2.4.1 场景描述 |
2.4.2 安全控制结构 |
2.4.3 形式化组合模型及其验证 |
2.5 本章小结 |
3 基于HCSP参考模型的安全功能测试案例生成方法 |
3.1 功能一致性完备测试套件的生成方法 |
3.1.1 基于I/O等价类划分的完备测试套件生成方法 |
3.1.2 基于HCSP模型的完备测试套件生成方法 |
3.2 给定故障模型下的完备安全测试套件生成方法 |
3.2.1 完备安全测试套件的基本生成算法 |
3.2.2 完备安全测试套件的改进生成算法 |
3.3 约束条件下测试案例的求解方法 |
3.3.1 问题基本描述 |
3.3.2 基于时间自动机模型检查的求解方法 |
3.4 工具实现 |
3.5 案例研究 |
3.6 本章小结 |
4 列控系统硬件故障状态下基于HCSP参考模型的安全测试案例生成方法 |
4.1 基于本体论的故障影响模型生成方法 |
4.1.1 本体论 |
4.1.2 相关信息本体的构建 |
4.1.3 故障影响模型的生成算法 |
4.2 基于时间自动机模型检查的危险诱导输入序列生成方法 |
4.2.1 HCSP向时间自动机的转换 |
4.2.2 转换函数的正确性证明 |
4.2.3 列控系统硬件故障状态下安全测试案例的生成 |
4.3 本章小结 |
5 案例分析 |
5.1 RBC切换场景下CTCS-3 级列控系统参考模型的构建与验证 |
5.1.1 安全控制结构 |
5.1.2 参考模型的构建与验证 |
5.2 测试案例的生成与评估 |
5.2.1 仿真测试平台 |
5.2.2 安全功能一致性测试案例的生成与评估 |
5.2.3 硬件故障状态下安全测试案例的生成与评估 |
5.3 本章小结 |
6 总结 |
6.1 论文总结 |
6.2 展望 |
参考文献 |
附录 A 定理 8 的证明 |
附录 B RBC切换场景下的C3系统HCSP模型 |
附录 C 输入等价类划分和 FSM 迁移关系 |
作者简历及攻读博士学位期间取得的研究成果 |
学位论文数据集 |
(6)一个面向时序规约模式的工控规约引导和PLC程序生成工具(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景及意义 |
1.2 研究现状 |
1.2.1 规约模式系统及其扩展 |
1.2.2 PLC程序生成 |
1.2.3 存在的问题 |
1.3 论文工作 |
1.3.1 针对实时PLC的规约模式系统扩展 |
1.3.2 PLC规约的引导和组合 |
1.3.3 PLC程序生成 |
1.3.4 工具设计与实现 |
1.4 论文组织结构 |
第二章 可编程逻辑控制器和规约模式系统简介 |
2.1 可编程逻辑控制器PLC |
2.1.1 PLC的基本工作原理 |
2.1.2 PLC编程 |
2.2 规约模式系统 |
2.2.1 SPS的范围模式 |
2.2.2 SPS的属性模式 |
2.2.3 一个基于SPS的规约描述实例 |
2.3 TRIO逻辑 |
第三章 面向实时PLC控制的SPS |
3.1 PLC控制需求的SPS描述 |
3.1.1 范围模式When |
3.1.2 SPS的子集 |
3.2 PLC中的定时器及其常见模式 |
3.2.1 TON定时器 |
3.2.2 SPS的实时扩展 |
3.3 面向实时PLC的模式规约系统SPS4PLC |
3.3.1 SPS4PLC的语法 |
3.3.2 SPS4PLC语义的TRIO逻辑表示 |
3.3.3 SPS实时扩展的语义差异 |
3.4 SPS4PLC的交互式引导 |
3.4.1 SPS4PLC问题树 |
3.4.2 模式的实例化 |
3.5 本章小结 |
第四章 基于SPS4PLC的 PLC程序生成 |
4.1 基本思路 |
4.2 范围模式的PLC程序片段生成 |
4.2.1 从范围模式到PLC模式程序片段 |
4.2.2 PLC模式程序片段生成规则的证明 |
4.2.3 生成规则相关说明 |
4.3 从PLC模式程序片段到PLC程序 |
4.3.1 PLC模式程序片段的实例化规则及其证明 |
4.3.2 控制冲突的优先级处理规则及其证明 |
4.3.3 依赖关系与PLC程序梯级顺序 |
4.4 本章小结 |
第五章 实验与工具 |
5.1 案例分析 |
5.1.1 案例1:电动机单相全波整流能耗制动控制 |
5.1.2 案例2:故障报警控制系统 |
5.1.3 SPS4PLC的规约模板 |
5.2 SPS4PLC应用总结 |
5.2.1 SPS4PLC在案例中的应用统计 |
5.2.2 SPS4PLC应用情况分析 |
5.2.3 SPS4PLC应用小结 |
5.3 工具实现 |
5.3.1 实验环境 |
5.3.2 工具简介 |
5.3.3 工具应用及能力分析 |
5.4 本章小结 |
第六章 总结与展望 |
6.1 本文工作总结 |
6.2 未来工作展望 |
致谢 |
参考文献 |
附录 A SPS4PLC的问题树 |
附录 B SpsToPlc案例应用结果 |
案例1 |
案例2 |
附录 C M7475 型平面磨床的PLC控制程序 |
作者简介 |
(7)基于SCADE的联锁列控一体化系统研究与实现(论文提纲范文)
致谢 |
摘要 |
ABSTRACT |
1 引言 |
1.1 课题背景及研究意义 |
1.2 一体化系统国内外研究现状 |
1.2.1 国外研究现状 |
1.2.2 国内研究现状 |
1.3 基于模型开发方法的研究现状 |
1.4 论文主要内容及结构 |
2 基于SCADE的软件开发方法 |
2.1 SCADE理论基础 |
2.2 SCADE开发流程 |
2.3 基于SCADE的一体化系统建模方法 |
2.3.1 数据流图 |
2.3.2 基于SCADE的一体化系统研究流程 |
2.4 本章小结 |
3 系统现状分析及一体化总体设计方案 |
3.1 联锁及列控中心现状分析 |
3.1.1 系统原理分析 |
3.1.2 系统接口分析 |
3.2 一体化系统可行性分析 |
3.3 一体化系统总体设计方案 |
3.3.1 一体化系统总体设计 |
3.3.2 一体化系统外部接口设计 |
3.4 本章小结 |
4 一体化应用软件设计与实现 |
4.1 一体化应用软件设计方案 |
4.1.1 软件结构 |
4.1.2 软件功能模块划分 |
4.1.3 软件数据结构 |
4.2 区段编码及信号机点灯处理模块模型设计 |
4.2.1 轨道电路编码及区间信号机显示分析 |
4.2.2 轨道电路编码数学模型 |
4.2.3 SCADE模型设计 |
4.3 区间运行方向控制模块SCADE模型设计 |
4.4 TSR命令处理模块SCADE模型设计 |
4.5 有源应答器报文生成和发送模块SCADE模型设计 |
4.6 联锁逻辑处理模块SCADE模型设计 |
4.7 本章小结 |
5 一体化系统验证与演示 |
5.1 一体化应用软件功能模块验证 |
5.1.1 SCADE模型仿真 |
5.1.2 SCADE模型覆盖率分析 |
5.1.3 SCADE模型C代码生成 |
5.2 一体化系统演示与分析 |
5.3 本章小结 |
6 总结与展望 |
6.1 成果总结 |
6.2 研究展望 |
参考文献 |
图索引 |
表索引 |
作者简历及攻读硕士学位期间取得的研究成果 |
学位论文数据集 |
(8)面向同步系统的时钟约束动态逻辑系统研究(论文提纲范文)
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 研究背景与现状 |
1.1.1 同步系统模型 |
1.1.2 CCSL |
1.1.3 动态逻辑 |
1.1.4 本文关注的研究问题 |
1.2 研究问题 |
1.3 主要贡献 |
1.3.1 研究思路 |
1.3.2 研究意义 |
1.3.3 主要工作 |
1.4 章节安排 |
第二章 预备知识 |
2.1 CCSL语言 |
2.2 Kripke框架 |
2.3 一阶动态逻辑FODL |
2.4 Sequent演算 |
2.5 本章小结 |
第三章 面向顺序程序的时钟约束动态逻辑sCDL |
3.1 引言 |
3.2 同步事件顺序程序SESP |
3.3 sCDL公式的语法 |
3.4 sCDL逻辑的语义 |
3.4.1 sCDL逻辑的解释,Kripke框架和赋值 |
3.4.2 SESP程序的语义 |
3.4.3 sCDL公式的语义 |
3.4.4 可满足关系和替换定理 |
3.5 sCDL逻辑证明系统 |
3.5.1 路径公式规则 |
3.5.2 非路径公式的规则 |
3.5.3 其它逻辑规则 |
3.6 一个sCDL逻辑的案例分析 |
3.6.1 Feeder系统 |
3.6.2 sCDL逻辑的局限性 |
3.7 本章小结 |
第四章 时钟约束动态逻辑CDL |
4.1 引言 |
4.2 CDL公式的语法 |
4.2.1 同步事件程序SEP |
4.2.2 CDL公式的语法 |
4.3 CDL公式的语义 |
4.3.1 SEP程序的逻辑一致性 |
4.3.2 并行交互条件逻辑公式的构造与并行trec程序的语义 |
4.3.3 SEP程序的语义 |
4.3.4 CDL上的可满足关系与替换定理 |
4.4 CDL逻辑证明系统 |
4.4.1 CDL逻辑并行算子的规则 |
4.4.2 并行算子证明规则中的算法 |
4.4.3 SEP程序的可推导关系 |
4.5 CCSL规约在时钟约束动态逻辑中的表示 |
4.6 本章小结 |
第五章 CDL逻辑系统的分析 |
5.1 引言 |
5.2 CDL逻辑证明系统的可靠性 |
5.2.1 非并行算子证明规则的可靠性 |
5.2.2 并行算子证明规则的可靠性 |
5.3 CDL逻辑证明系统的相对完备性 |
5.3.1 相对完备性定理的证明 |
5.3.2 相对完备性定理中各条件的证明 |
5.4 本章小结 |
第六章 CDL逻辑系统的案例分析 |
6.1 引言 |
6.2 数字滤波器系统 |
6.2.1 系统功能介绍 |
6.2.2 系统行为、性质的建模 |
6.3 车载自动窗系统 |
6.3.1 系统功能介绍 |
6.3.2 系统行为、性质的建模 |
6.4 系统CCSL规约在CDL逻辑系统中的证明 |
6.5 本章小结 |
第七章 总结和展望 |
7.1 本文工作总结 |
7.2 未来工作的展望 |
参考文献 |
致谢 |
攻读博士学位期间发表论文和科研情况 |
(9)MSVL程序的高效运行时验证方法研究(论文提纲范文)
摘要 |
ABSTRACT |
符号对照表 |
缩略语对照表 |
第一章 绪论 |
1.1 研究背景 |
1.2 国内外研究现状 |
1.2.1 时序逻辑的研究现状 |
1.2.2 时序逻辑编程的研究现状 |
1.2.3 运行时验证方法的研究现状 |
1.2.4 目前方法存在的问题 |
1.3 本文研究内容 |
1.4 论文组织结构 |
第二章 技术背景 |
2.1 投影时序逻辑 |
2.1.1 语法 |
2.1.2 语义 |
2.1.3 导出公式与逻辑规则 |
2.2 命题投影时序逻辑 |
2.3 MSVL及MSVL编译器 |
2.4 运行时验证方法 |
2.4.1 基本原理 |
2.4.2 运行时验证与其他验证方法的对比 |
2.4.3 运行时验证的应用范围 |
2.5 本章小结 |
第三章 基于单机多核系统的并行运行时验证方法 |
3.1 MSVL程序的传统运行时验证方法 |
3.2 基于单机多核系统的并行运行时验证方法 |
3.2.1 基本框架 |
3.2.2 插桩 |
3.2.3 验证任务分配和结果合并 |
3.2.4 验证模块中的相关算法 |
3.3 实现和评价 |
3.3.1 实现 |
3.3.2 验证效率评价 |
3.3.3 验证规模评价 |
3.3.4 并行机制对性能的提升 |
3.4 验证实例 |
3.4.1 问题背景 |
3.4.2 问题模型 |
3.4.3 性质描述 |
3.4.4 验证结果 |
3.5 本章小结 |
第四章 基于分布式网络的并行运行时验证方法 |
4.1 基于分布式网络的并行运行时验证方法 |
4.1.1 基本框架 |
4.1.2 调度算法 |
4.1.3 单个机器中序列片段的并行验证 |
4.2 实现和评价 |
4.2.1 实现 |
4.2.2 验证效率评价 |
4.3 验证实例 |
4.3.1 问题背景 |
4.3.2 违反SQLite3数据库API调用规范的实例 |
4.3.3 API调用序列规范的描述 |
4.3.4 实验结果 |
4.3.5 相关工作 |
4.4 本章小结 |
第五章 MSVL程序内存泄漏的运行时检测方法 |
5.1 泄露实例 |
5.2 MSVL程序内存泄漏的运行时检测方法 |
5.2.1 方法框架 |
5.2.2 插桩 |
5.2.3 内存泄露检测、消除和修复 |
5.2.4 动态符号执行 |
5.3 实验结果 |
5.3.1 针对单条执行路径DEF LEAK的性能 |
5.3.2 采用动态符号执行后DEF LEAK的性能 |
5.4 相关工作 |
5.4.1 静态内存泄漏检测方法 |
5.4.2 动态内存泄漏检测方法 |
5.5 本章小结 |
第六章 MSVL程序的统一限界运行时验证方法 |
6.1 MSVL程序的统一运行时验证方法 |
6.2 PPTL限界语义 |
6.3 MSVL程序的统一限界运行时验证方法 |
6.4 验证实例 |
6.4.1 互斥问题 |
6.4.2 哲学家就餐问题 |
6.4.3 银行家算法 |
6.5 本章小结 |
第七章 总结与展望 |
7.1 工作总结 |
7.2 研究展望 |
参考文献 |
致谢 |
作者简介 |
四、反应式系统面向性质测试的方法框架(论文参考文献)
- [1]云平台下面向微服务的高性能API网关设计与实现[D]. 徐楚风. 电子科技大学, 2021(01)
- [2]协作式工业控制系统建模、分解及验证技术研究[D]. 熊家文. 华东师范大学, 2020(11)
- [3]同步语言多线程代码生成方法及语义保持证明研究[D]. 袁胜浩. 南京航空航天大学, 2020(07)
- [4]基于求精的AADL模型Ada代码生成方法研究[D]. 冯思喆. 南京航空航天大学, 2020(07)
- [5]基于模型的高速铁路列车运行控制系统安全测试方法研究[D]. 韩笑. 北京交通大学, 2020(03)
- [6]一个面向时序规约模式的工控规约引导和PLC程序生成工具[D]. 徐寒冰. 东南大学, 2019(06)
- [7]基于SCADE的联锁列控一体化系统研究与实现[D]. 韩冰倩. 北京交通大学, 2019(01)
- [8]面向同步系统的时钟约束动态逻辑系统研究[D]. 张元睿. 华东师范大学, 2019(09)
- [9]MSVL程序的高效运行时验证方法研究[D]. 于斌. 西安电子科技大学, 2019(02)
- [10]形式化方法概貌[J]. 王戟,詹乃军,冯新宇,刘志明. 软件学报, 2019(01)