CN110287089B - 一种基于中间格式及smt技术的微内核ipc验证方法 - Google Patents

一种基于中间格式及smt技术的微内核ipc验证方法 Download PDF

Info

Publication number
CN110287089B
CN110287089B CN201910375937.XA CN201910375937A CN110287089B CN 110287089 B CN110287089 B CN 110287089B CN 201910375937 A CN201910375937 A CN 201910375937A CN 110287089 B CN110287089 B CN 110287089B
Authority
CN
China
Prior art keywords
ipc
microkernel
smt
source code
llvm
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.)
Active
Application number
CN201910375937.XA
Other languages
English (en)
Other versions
CN110287089A (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.)
East China Normal University
Original Assignee
East China Normal University
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 East China Normal University filed Critical East China Normal University
Priority to CN201910375937.XA priority Critical patent/CN110287089B/zh
Publication of CN110287089A publication Critical patent/CN110287089A/zh
Application granted granted Critical
Publication of CN110287089B publication Critical patent/CN110287089B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Devices For Executing Special Programs (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于中间格式及SMT技术的微内核IPC验证方法。首先将IPC源代码改写为抽象的IPC源代码;使用LLVM编译框架从抽象的IPC源代码自动生成LLVM中间语言;将LLVM中间语言转化为SMT可接收代码;根据微内核IPC规范提取其性质;对提取的性质编写SMT代码;根据微内核IPC得到的SMT代码和IPC性质得到的SMT代码,应用SMT求解器进行验证;若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证。若验证通过,则表明微内核IPC满足性质。本发明应用到基于ESB的微内核IPC验证中,以提高其安全性、可靠性。

Description

一种基于中间格式及SMT技术的微内核IPC验证方法
技术领域
本发明涉及微内核操作系统领域,具体涉及一种基于中间格式及SMT技术的微内核IPC验证方法。
背景技术
随着计算机软件、硬件技术的快速发展与提高,计算机软件的规模越来越大、复杂度越来越高,其应用领域也在不断扩展,因此,软件的可信性就变得越来越重要。可信性包括安全性、可靠性等方面。软件程序的应用场景不断扩展并深入到各个方面,在个人电脑、服务器、家用设备、交通管理、航空航天等各大领域均起到重要作用。因软件安全导致的重大事故层出不穷,例如2014年OpenSSL出现安全漏洞——“心脏流血”(HeartBleed),导致服务器遭到黑客攻击而泄露了内存数据。攻击者利用OpenSSL没有及时的对输入的内容进行边界检测,导致缓存内存溢出,获取相关内存信息,从而泄露用户的账号、密码等相关隐私信息,造成了重大损失。因此,如何提高软件程序的可信性是当前软件产业发展的一个重要课题。
近年来,随着可满足性模理论的不断进步以及大数据、云计算等新兴技术的不断发展,可满足性模理论被广泛地应用于各个领域,例如分布式、大数据、云计算、人工智能、多核问题、程序验证等等。这些领域中待解决的实际问题都可以建模为约束可满足问题,SMT(Satisfiability Modulo Theories,可满足性模理论)在这类问题的表述和求解上有突出优势。本发明提出了对微内核IPC(Inter-Process Communication,进程间通信)进行验证的方法。首先将IPC源代码,包括同步调用模块,同步等待模块,异步发送模块,异步应答模块等,改写为抽象的IPC源代码;使用LLVM编译框架从抽象的IPC源代码自动生成LLVM中间语言;将LLVM中间语言转化为SMT可接收代码;根据微内核IPC规范提取其性质;对提取的性质编写SMT代码;根据微内核IPC得到的SMT代码和IPC性质得到的SMT代码,应用SMT求解器进行验证;若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证。若验证通过,则表明微内核IPC满足性质。本发明应用到基于ESB(Event Service Bus,事件服务总线)的微内核IPC验证中,以提高其安全性、可靠性。
发明内容
本发明提出了一种基于中间格式及SMT技术的微内核IPC验证方法,包括以下步骤:
步骤一:根据已有的微内核IPC源代码进行抽象得到抽象的IPC源代码;
步骤二:根据抽象的IPC源代码,使用LLVM框架下的编译器,将抽象的IPC源代码转化为LLVM中间表示;
步骤三:提取LLVM中间表示中的信息转换为python格式;
步骤四:根据微内核IPC的规范,抽取出需要验证的性质并编写微内核IPC的性质;
步骤五:将微内核IPC的SMT代码和IPC性质的SMT代码作为SMT求解器的输入,判断微内核IPC是否满足IPC性质;若微内核IPC不满足IPC性质,则需要修复微内核IPC代码的错误,并重新将二者生成的SMT输入SMT求解器;若微内核IPC满足性质,则可判断微内核的正确性。
本发明提出的所述微内核IPC验证方法中,所述步骤一根据已有的微内核IPC源代码进行抽象得到抽象的IPC源代码包括以下步骤:
步骤A1:重写微内核IPC的参数列表为整型;
步骤A2:重写微内核IPC的数据结构;
步骤A3:重写微内核IPC源代码中的方法。
本发明提出的所述微内核IPC验证方法中,所述A1微内核IPC中的参数是整型的。
本发明提出的所述微内核IPC验证方法中,所述微内核IPC包括同步调用模块、同步等待模块、异步发送模块和异步应答模块。
本发明提出的所述微内核IPC验证方法中,所述步骤二根据抽象的IPC源代码,使用LLVM框架下的编译器,将IPC源代码转化为LLVM中间表示包括以下步骤:
步骤B1:将抽象的微内核IPC源代码转化为LLVM中间表示;
步骤B2:将LLVM中间语言优化。
本发明提出的所述微内核IPC验证方法中,所述B1通过LLVM编译器框架中的前端框架Clang将IPC源代码转化为LLVM中间语言并优化LLVM中间语言。
本发明提出的所述微内核IPC验证方法中,所述提取LLVM中间表示中的信息转换为python格式包括以下步骤:
步骤C1:编写LLVM中间表示转换为python的转换器;
步骤C2:将LLVM中间表示转换为python语言格式。
本发明提出的所述微内核IPC验证方法中,所述步骤三提取LLVM中间表示的信息包括全局变量,参数大小,参数类型。
本发明提出的所述微内核IPC验证方法中,所述步骤四根据微内核IPC的规范,抽取出需要验证的性质并编写微内核IPC的性质包括以下步骤:
步骤D1:从已有的微内核IPC自然语言规范中提取IPC性质;
步骤D2:将提取出的性质用python表示出来;
步骤D3:验证微内核IPC源代码和提取出的IPC性质的等价性。
本发明提出的所述微内核IPC验证方法中,所述步骤五将微内核IPC的SMT代码和IPC性质的SMT代码输入SMT求解器进行求解包括以下步骤:
步骤E1:将微内核IPC的SMT代码和IPC性质的SMT代码作为SMT求解器的输入;
步骤E2:验证所述微内核IPC是否正确,若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证;若验证通过,则表明微内核IPC满足性质。
本发明公开了一种基于中间格式及SMT技术的微内核IPC验证方法,首先将IPC源代码,包括同步调用模块,同步等待模块,异步发送模块,异步应答模块等,改写为抽象的IPC源代码;使用LLVM编译框架从抽象的IPC源代码自动生成LLVM中间语言;将LLVM中间语言转化为SMT可接收代码;根据微内核IPC规范提取其性质;对提取的性质编写SMT代码;根据微内核IPC得到的SMT代码和IPC性质得到的SMT代码,应用SMT求解器进行验证;若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证。若验证通过,则表明微内核IPC满足性质。
附图说明
图1表示本发明一种基于中间格式及SMT技术的微内核IPC验证方法的架构示意图。
图2表示本发明一种基于中间格式及SMT技术的微内核IPC验证方法的方法流程图。
图3表示本发明一种基于中间格式及SMT技术的微内核IPC验证方法中验证一致性的方法流程图。
具体实施方式
结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。
本发明的基于LLVM中间格式的微内核IPC验证方法中需要从自然语言规范中提取微内核IPC所应具备的性质,将其用形式化语言重新表述,并转化为SMT代码,结合源代码转化得到的SMT在自动验证工具中进行验证。
本发明提出了一种基于LLVM中间格式的微内核IPC验证方法,包括:
步骤一:根据已有的微内核IPC源代码进行抽象,从而进一步得到抽象的IPC源代码;
步骤二:根据抽象的IPC源代码,使用LLVM框架下的编译器,将IPC源代码转化为LLVM中间表示;
步骤三:提取LLVM中间表示中的全局变量,参数大小,参数类型等各种信息,将其转换为python格式;
步骤四:根据微内核IPC的规范,抽取出需要验证的性质并编写微内核IPC的性质;
步骤五:将微内核IPC的SMT代码和IPC性质的SMT代码作为SMT求解器的输入,若验证失败,则表明微内核IPC不满足性质,需要修改微内核IPC源代码,并重新将二者生成的SMT输入SMT求解器;若验证通过,则表明微内核IPC满足性质。
本发明提出的微内核IPC验证方法中,所述步骤一根据已有的微内核IPC源代码进行抽象,得到抽象的IPC源代码包括以下步骤:
步骤A1:重写微内核IPC的参数列表为整型;
步骤A2:重写微内核IPC的数据结构;
步骤A3:重写微内核IPC源代码中的方法。
本发明提出的微内核IPC验证方法中,通过LLVM编译器框架中的前端框架Clang进行微内核IPC到LLVM中间语言的转化。
本发明提出的微内核IPC验证方法中,所述步骤二根据抽象的IPC源代码,使用LLVM框架下的编译器,将IPC源代码转化为LLVM中间表示包括以下步骤:
步骤B1:将抽象的微内核IPC源代码转化为LLVM中间表示;
步骤B2:将LLVM中间语言优化。
本发明提出的微内核IPC验证方法中,所述步骤三提取LLVM中间表示中的全局变量,参数大小,参数类型等各种信息,将其转换为python格式包括以下步骤:
步骤C1:编写LLVM转换为python的转换器;
步骤C2:将LLVM IR转换为python语言格式。
本发明提出的微内核IPC验证方法中,所述步骤四根据微内核IPC的规范,抽取出需要验证的性质并编写微内核IPC的性质包括以下步骤:
步骤D1:从已有的微内核IPC自然语言规范中提取IPC性质;
步骤D2:将提取出的性质用python表示出来;
步骤D3:验证微内核IPC源代码和提取出的IPC性质的等价性。
本发明提出的基于LLVM中间格式的微内核IPC验证方法中,所述步骤五将微内核IPC的SMT代码和IPC性质的SMT代码输入SMT求解器进行求解并且修改包括以下步骤:
步骤E1:将微内核IPC的SMT代码和IPC性质的SMT代码作为SMT求解器的输入;
步骤E2:验证所述微内核IPC是否正确,若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证。若验证通过,则表明微内核IPC满足性质。
本发明提出的基于中间格式和SMT技术的微内核IPC验证方法,将IPC源代码,包括同步调用模块,同步等待模块,异步发送模块,异步应答模块等,改写为抽象的IPC源代码;使用LLVM编译框架从抽象的IPC源代码自动生成LLVM中间语言;将LLVM中间语言转化为SMT可接收代码;根据微内核IPC规范提取其性质;对提取的性质编写SMT代码;根据微内核IPC得到的SMT代码和IPC性质得到的SMT代码,应用SMT求解器进行验证;若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证。若验证通过,则表明微内核IPC满足性质。本发明应用到基于ESB的微内核IPC验证中,以提高其安全性、可靠性。
实施例
如图1所示,是本发明的一种基于中间格式及SMT技术的微内核IPC验证方法的架构示意图,本发明包括以下步骤:
步骤一:给定一个基于ESB的微内核操作系统,首先,对基于ESB的微内核操作系统的IPC源码进行抽象,包括ESB帧结构,同步调用模块,同步等待模块,异步发送模块,异步应答模块等,并重写基于ESB的微内核操作系统的IPC的参数列表为整型,重写IPC的数据结构,重写IPC中的方法。对于ESB帧结构,将源地址和目的地址提取出来,作为参数列表中的一项。
步骤二:图2显示的是本发明的一种基于中间格式及SMT技术的微内核IPC验证方法的方法流程图。根据抽象的IPC源代码,通过LLVM编译器框架中的前端框架Clang进行系统调用部分的源码到LLVM中间语言的转化。Clang是LLVM编译器的前端框架,把微内核IPC转化为LLVM编译器的中间语言格式。LLVM的中间语言叫做LLVM IR,是一种介于汇编和C之间的语言,结合了汇编和C的优点,目前对微内核IPC的分析很多事基于LLVM中间语言的。使用LLVM框架下的编译器,将IPC源代码转化为LLVM中间表示,将得到的LLVM中间语言优化,得到更简洁的LLVM IR格式。
步骤三:根据步骤二得到的LLVM中间表示,提取LLVM中间表示中的全局变量,参数大小,参数类型等各种信息,将其转换为python格式。对基于ESB的微内核操作系统的IPC部分进行验证。
图3显示的是本发明的一种基于中间格式及SMT技术的微内核IPC验证方法中验证一致性的方法流程图,由于IPC性质是从基于ESB的微内核操作系统规范中提取的,验证IPC性质之前需验证IPC源码和抽象的python格式的一致性。根据一致性标准,若验证通过,则进行性质的验证,若验证不通过则修改python源码。
步骤四:分析基于ESB的微内核操作系统IPC的自然语言规范,抽取出基于ESB的微内核操作系统所定义的IPC执行的性质,并将性质形式化描述出来,并验证IPC性质公式的正确性,其中包括同步调用模块,同步等待模块,异步发送模块,异步应答模块等内容。
步骤五:将基于ESB的微内核操作系统IPC的SMT代码和IPC性质的SMT代码作为SMT求解器的输入进行求解,若进程间通信程序不满足IPC性质,则需要修复进程间通信程序代码的错误,并重新将二者生成的SMT输入SMT求解器;若进程间通信程序满足IPC性质,则可判断进程间通信程序的正确性。
本具体实例以基于ESB的微内核操作系统为例,对其IPC部分进行验证。首先将基于ESB的微内核操作系统的IPC部分进行抽象,得到抽象的IPC源代码,根据抽象的源码得到SMT代码。阅读基于ESB的微内核操作系统的规范,提取出IPC部分的性质。将IPC和提取出的性质的SMT相结合,调用SMT求解器进行求解。
本具体事例中,运用本发明的基于LLVM中间格式的微内核IPC验证方法对基于ESB的微内核操作系统的IPC部分进行形式化验证,另外,本验证工作是对系统调用的IPC性质进行验证的,但是其中也包含了一致性检查,具体包括以下步骤:
步骤一:分析基于ESB的微内核操作系统IPC部分的源代码,包括同步调用模块,同步等待模块,异步发送模块,异步应答模块等,并重写微内核IPC的参数列表为整型。
步骤二:根据抽象的IPC源代码,通过LLVM编译器框架中的前端框架Clang进行系统调用部分的源码到LLVM中间语言的转化。Clang是LLVM编译器的前端框架,用来把微内核IPC转化为LLVM编译器的中间语言格式。LLVM的中间语言叫做LLVM IR,是一种介于汇编和C之间的语言,结合了汇编和C的优点,目前对微内核IPC的分析很多事基于LLVM中间语言的。使用LLVM框架下的编译器,将IPC源代码转化为LLVM中间表示,将得到的LLVM中间语言优化,得到更简洁的LLVM IR格式。
步骤三:根据抽象过的IPC源代码编写IPC的python格式,保证函数名称,参数个数,参数类型,函数中的方法等保持一致。
步骤四:根据步骤二得到的LLVM中间表示,提取LLVM中间表示中的全局变量,参数大小,参数类型等各种信息,将其转换为python格式。对面向物联网的微内核操作系统的IPC部分进行验证。
更为优选的,步骤四之后进一步编写一致性检查标准,如函数名称,参数类型,参数个数,函数中所执行的操作等是否一致。一致性检查标准是本发明的重要判断标准之一,用来检查微内核IPC源代码与根据源代码编写的Python代码是否等价。
步骤五:将基于ESB的微内核操作系统内核的IPC的SMT代码和一致性检查的SMT代码作为SMT求解器的输入进行求解,若系统调用程序不满足一致性标准,即函数名称,参数类型,参数个数,或函数中所执行的操作不一致,则需要修复根据抽象过的IPC源代码编写的python格式,并重新将二者生成的SMT输入SMT求解器;若系统调用程序满足一致性标准,则可判断系一致性标准通过。
运用SMT自动求解器进行求解,如果程序验证错误,可以根据提示找出反例,对验证的代码进行修改后重新验证;若验证通过,则说明所验证的代码与规范描述一致,保留正确的代码。
本具体实例以基于ESB的微内核操作系统IPC形式化验证为例,首先将IPC源代码,包括同步调用模块,同步等待模块,异步发送模块,异步应答模块等,改写为抽象的IPC源代码;使用LLVM编译框架从抽象的IPC源代码自动生成LLVM中间语言;将LLVM中间语言转化为SMT可接收代码;根据微内核IPC规范提取其性质;对提取的性质编写SMT代码;根据微内核IPC得到的SMT代码和IPC性质得到的SMT代码,应用SMT求解器进行验证;若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证。若验证通过,则表明微内核IPC满足性质。本发明应用到基于ESB的微内核IPC形式化验证中,以提高其安全性、可靠性。
本发明的保护内容不局限于以上实施例。在不背离发明构思的精神和范围下,本领域技术人员能够想到的变化和优点都被包括在本发明中,并且以所附的权利要求书为保护范围。

Claims (7)

1.一种基于中间格式及SMT技术的微内核IPC验证方法,其特征在于,包括以下步骤:
步骤一:根据已有的微内核IPC源代码进行抽象得到抽象的IPC源代码;所述A1微内核IPC中的参数是整型的;所述微内核IPC包括同步调用模块、同步等待模块、异步发送模块和异步应答模块;
所述步骤一根据已有的微内核IPC源代码进行抽象得到抽象的IPC源代码包括以下步骤:
步骤A1:重写微内核IPC的参数列表为整型;
步骤A2:重写微内核IPC的数据结构;
步骤A3:重写微内核IPC源代码中的方法;
步骤二:根据抽象的IPC源代码,使用LLVM框架下的编译器,将抽象的IPC源代码转化为LLVM中间表示;
步骤三:提取LLVM中间表示中的信息转换为python格式;
步骤四:根据微内核IPC的规范,抽取出需要验证的性质并编写微内核IPC的性质;
步骤五:将微内核IPC的SMT代码和IPC性质的SMT代码作为SMT求解器的输入,判断微内核IPC是否满足IPC性质;若微内核IPC不满足IPC性质,则需要修复微内核IPC代码的错误,并重新将二者生成的SMT输入SMT求解器;若微内核IPC满足性质,则可判断微内核的正确性。
2.如权利要求1所述的微内核IPC验证方法中,其特征在于,所述步骤二根据抽象的IPC源代码,使用LLVM框架下的编译器,将IPC源代码转化为LLVM中间表示包括以下步骤:
步骤B1:将抽象的微内核IPC源代码转化为LLVM中间表示;
步骤B2:将LLVM中间语言优化。
3.如权利要求2所述的微内核IPC验证方法中,其特征在于,所述B1通过LLVM编译器框架中的前端框架Clang将IPC源代码转化为LLVM中间语言并优化LLVM中间语言。
4.如权利要求1所述的微内核IPC验证方法中,其特征在于,所述提取LLVM中间表示中的信息转换为python格式包括以下步骤:
步骤C1:编写LLVM中间表示转换为python的转换器;
步骤C2:将LLVM中间表示转换为python语言格式。
5.如权利要求4所述的微内核IPC验证方法中,其特征在于,所述步骤三提取LLVM中间表示的信息包括全局变量,参数大小,参数类型。
6.如权利要求1所述的微内核IPC验证方法中,其特征在于,所述步骤四根据微内核IPC的规范,抽取出需要验证的性质并编写微内核IPC的性质包括以下步骤:
步骤D1:从已有的微内核IPC自然语言规范中提取IPC性质;
步骤D2:将提取出的性质用python表示出来;
步骤D3:验证微内核IPC源代码和提取出的IPC性质的等价性。
7.如权利要求1所述的微内核IPC验证方法中,其特征在于,所述步骤五将微内核IPC的SMT代码和IPC性质的SMT代码输入SMT求解器进行求解包括以下步骤:
步骤E1:将微内核IPC的SMT代码和IPC性质的SMT代码作为SMT求解器的输入;
步骤E2:验证所述微内核IPC是否正确,若验证失败,根据验证工具给出的提示修改微内核IPC并重新验证;若验证通过,则表明微内核IPC满足性质。
CN201910375937.XA 2019-05-07 2019-05-07 一种基于中间格式及smt技术的微内核ipc验证方法 Active CN110287089B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910375937.XA CN110287089B (zh) 2019-05-07 2019-05-07 一种基于中间格式及smt技术的微内核ipc验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910375937.XA CN110287089B (zh) 2019-05-07 2019-05-07 一种基于中间格式及smt技术的微内核ipc验证方法

Publications (2)

Publication Number Publication Date
CN110287089A CN110287089A (zh) 2019-09-27
CN110287089B true CN110287089B (zh) 2023-02-17

Family

ID=68002341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910375937.XA Active CN110287089B (zh) 2019-05-07 2019-05-07 一种基于中间格式及smt技术的微内核ipc验证方法

Country Status (1)

Country Link
CN (1) CN110287089B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111679964B (zh) * 2020-04-21 2022-07-26 华东师范大学 基于边界模型检测技术的微内核操作系统接口的形式化验证方法
CN116069669B (zh) * 2023-03-07 2023-06-16 中国科学技术大学 全自动分布式一致性的分析方法、系统、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105164642A (zh) * 2013-03-14 2015-12-16 微软技术许可有限责任公司 对合同的操作系统支持
CN106802863A (zh) * 2016-12-16 2017-06-06 华东师范大学 基于微内核原型的进程间通信安全性形式化分析验证系统
CN109240907A (zh) * 2018-07-26 2019-01-18 华东师范大学 基于霍尔逻辑的嵌入式实时操作系统的自动化验证方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070094495A1 (en) * 2005-10-26 2007-04-26 Microsoft Corporation Statically Verifiable Inter-Process-Communicative Isolated Processes
US10642664B2 (en) * 2017-03-21 2020-05-05 Dell Products, Lp System and method for securing an inter-process communication via a named pipe

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105164642A (zh) * 2013-03-14 2015-12-16 微软技术许可有限责任公司 对合同的操作系统支持
CN106802863A (zh) * 2016-12-16 2017-06-06 华东师范大学 基于微内核原型的进程间通信安全性形式化分析验证系统
CN109240907A (zh) * 2018-07-26 2019-01-18 华东师范大学 基于霍尔逻辑的嵌入式实时操作系统的自动化验证方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Chapter Two-Advances in Software Model Checking;Junaid H.Siddiqui.etc;《Advances in Computers》;20181231;第108卷;全文 *
基于微内核的操作系统设计以及嵌入式虚拟化应用的研究;程广辉;《中国博士学位论文全文数据库 (信息科技辑)》;20131015;全文 *

Also Published As

Publication number Publication date
CN110287089A (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
CN106156186B (zh) 一种数据模型管理装置、服务器及数据处理方法
CN105022630B (zh) 一种组件管理系统及组件管理方法
Forster et al. Verification of business process quality constraints based on visual process patterns
CN111813701B (zh) 基于http的接口测试方法、装置、计算机设备及存储介质
CN109634600B (zh) 一种基于安全扩展SysML和AADL模型的代码生成方法
CN103577168A (zh) 测试用例创建系统及方法
CN113867913A (zh) 面向微服务的业务请求处理方法、装置、设备及存储介质
CN110287089B (zh) 一种基于中间格式及smt技术的微内核ipc验证方法
US20180025162A1 (en) Application program analysis apparatus and method
US9715372B2 (en) Executable guidance experiences based on implicitly generated guidance models
CN112346976A (zh) 基于网页的接口文档生成方法、装置、系统及计算机设备
Yu et al. Scenario-based static analysis of UML class models
CN112632333A (zh) 查询语句生成方法、装置、设备及计算机可读存储介质
CN113238739A (zh) 一种插件开发和数据获取方法、装置、电子设备及介质
WO2024032209A1 (zh) 区块链交易验证方法、装置、存储介质及电子设备
Wang et al. Locating need-to-translate constant strings for software internationalization
CN115904317A (zh) 一种前后端接口统一调用方法、装置、设备及存储介质
CN113434217A (zh) 漏洞扫描方法、装置、计算机设备及介质
Jain et al. Sklee: A dynamic symbolic analysis tool for ethereum smart contracts (tool paper)
CN115022312A (zh) 多智能合约引擎的实现方法、装置、电子设备及存储介质
JP2013235508A (ja) オブジェクト指向プログラム生成装置、その方法、プログラム
Jasser et al. Back to the drawing board
Yang et al. Model-based design and verification of automotive electronics compliant with OSEK/VDX
CN114579976B (zh) 基于状态转换的堆内存破坏漏洞自动验证方法和系统
CN113779791B (zh) 一种仿真系统、方法、装置及电子设备

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