当前位置: 首页 > 专利查询>安徽大学专利>正文

一种操作系统内核复杂数据结构形式化验证方法技术方案

技术编号:38360481 阅读:15 留言:0更新日期:2023-08-05 17:30
本发明专利技术提供一种操作系统内核复杂数据结构形式化验证方法,首先基于块内存在操作上的定义,将内核中源程序对数据结构的操作映射到抽象内存中,将包含于程序层面数据结构对象的类型、字节大小等信息携带到内存模型中,得到对应抽象内存层面的性质;再依据基于内存状态语义的推理规则,得到内存操作过程中不同状态的断言;结合对抽象程序层定义的符合复杂结构描述语义模型的处理,得到经过扩展的霍尔逻辑,并通过符号化的程序逻辑进行推理;然后将逻辑推理和内存状态断言交由自动证明器进行证明,自动化验证复杂数据结构的相关性质是否满足期望。本发明专利技术实现了对操作系统内核复杂数据结构的高效、精确的形式化验证。精确的形式化验证。精确的形式化验证。

【技术实现步骤摘要】
一种操作系统内核复杂数据结构形式化验证方法


[0001]本专利技术涉及数据结构形式化验证
,具体涉及一种操作系统内核复杂数据结构形式化验证方法。

技术介绍

[0002]操作系统对于计算机的来说是十分重要的,操作系统本身的可靠性和正确性是保证计算机稳定工作的前提条件,但是由于操作系统本身功能众多,开发难度大,参数复杂,调试困难,因此可能存在一些在设计之初就难以考虑全面的问题或在开发过程中没被发现的错误。实时操作系统对于正确性和安全性的要求较高,并且内核中复杂数据结构的管理是其核心功能,所以对内核中存在的复杂数据结构的验证一直是重中之重。
[0003]复杂数据结构因其存在多种类型数据结构组合和嵌套而难以规范化描述,目前大多数方法是在程序抽象层对内核进行需求的高层建模,这种方法屏蔽了程序细节,性质表达抽象,虽然验证相对简单,但是很多复杂结构性质的验证稍显不足;还有采取语义拆分和内存分离的方法,对操作系统内核中复杂数据结构进行形式化描述和验证,但是其中没有涉及到拆分前后程序语义一致性证明和验证的问题。
[0004]因此,在现有技术下,高层抽象建模和程序结构拆分难以满足操作复杂数据结构具体程序的验证要求,存在抽象层次高、验证的效率不高的问题。

技术实现思路

[0005]本专利技术的目的提供一种操作系统内核复杂数据结构形式化验证方法,以解决现有技术在验证操作系统内核的安全性和可靠性方面的不足。
[0006]为实现上述目的,本专利技术采用如下技术方案:
[0007]一种操作系统内核复杂数据结构形式化验证方法,包括以下步骤:
[0008]S1、以内存块为基础建立内存模型:将复杂数据结构的操作进行函数形式的定义和描述,使程序层面的数据和结构操作映射到抽象的物理内存上;
[0009]S2、基于内存模型,形式化定义和描述内存对象操作性质,建立基于内存状态语义的推理规则,得到内存操作过程中不同状态的断言;
[0010]S3、在程序层面对抽象的内存和内存块的状态进行描述,通过定义符合复杂结构描述的文法和语义建立语义模型;
[0011]S4、基于语义模型得到扩展的霍尔逻辑,并通过符号化的程序逻辑进行推理,得到扩展的霍尔逻辑推理;
[0012]S5、建立内存模型到程序语义的映射,将语义模型应用于基于内存操作的推理规则上,并建立高层程序层和低层抽象内存层之间的一致性关系:将高层关于复杂数据结构操作的推理和证明对应和映射到低层的内存空间的操作上,对数据结构对象和具体内存对象的操作建立映射关系;
[0013]S6、结合抽象内存层的断言以及扩展的霍尔逻辑推理,在具体内存的操作性质上
进行验证:将内存状态断言和扩展的霍尔逻辑推理交给自动定理证明器进行证明,验证复杂数据结构的性质是否满足期望。
[0014]进一步地,所述内存模型具体通过以下方法建立:
[0015]S11、确定内存块,将内存划分为不同的块来描述内存对象和操作,并定义基本数据类型,进行形式化的刻画和表示;
[0016]S12、建立内存操作,将程序中所有数据和结构的操作映射到抽象的物理内存上,并以未解释函数的形式对内存块上的基本操作进行定义和描述,标识某一内存块的具体状态。
[0017]进一步地,所述内存操作过程中不同状态的断言具体通过以下方法得到:
[0018]S21、定义内存模型语义,描述与语义相关的性质,由此得到不同内存操作的推理规则,定义内存操作的前置和后置条件,刻画内存因为操作而发生的状态变化;
[0019]S22、建立由操作引起对于内存的状态迁移,基于内存操作的前置和后置条件,对内存状态的迁移进行建模和描述,得到不同内存操作的正确性和安全性断言。
[0020]进一步地,所述语义模型的建立具体通过以下方式实现:
[0021]S31、在程序层面对抽象的内存和内存块的状态进行描述,将具体的内存状态抽象描述为:State=M*B,其中M表示为程序的抽象内存状态,B代表当前内存状态下内存块中的值;
[0022]S32、对于程序的连续抽象域进行描述,并使用列表操作符来说明更加通用的复杂数据结构的形式:描述具体域到内存空间的映射及其链表形式,定义程序层面的语法规则,以及将函数的调用转化为对抽象内存状态的操作。
[0023]进一步地,所述建立高层程序层和低层抽象内存层之间的一致性关系具体包括以下步骤:
[0024]S51、定义抽象内存的抽象程序的语义,说明满足给定的抽象程序的内存状态;
[0025]S52、根据程序语法,在内存模型定义和描述的基础上对程序语义进行定义和逻辑推理;将特定的程序文法对应到各自的具体内存空间上去进行判值,然后形成关于抽象内存空间的公理化推理规则;
[0026]S53、在内存模型具体语义的基础上,在抽象内存层上对程序进行基于逻辑的推理规则的定义和说明;
[0027]S54、对基本的霍尔式的逻辑推理进行扩展定义,得到基于内存模型描述的程序进行形式化的推断。
[0028]进一步地,所述操作验证具体包括以下步骤:
[0029]S61、将得到的内存状态断言和扩展的霍尔逻辑推理以脚本的形式交由定理自动求解器进行求解;
[0030]S62、如果输出为sat,则说明该部分数据结构的相关性质是满足期望的;如果输出为unsat,则说明该部分数据结构的相关性质是不满足期望。
[0031]由以上技术方案可知,本专利技术通过建立以内存块为基础的内存模型,将复杂数据结构的操作进行函数形式的定义和描述,将类型和字节大小等信息携带到操作的定义中,能够更加准确地描述数据结构对象的操作性质。同时针对抽象程序层,定义了符合复杂结构描述的文法和语义,以及基于内存对象操作的一致性关系,对数据结构对象和具体内存
对象的操作建立映射关系。并通过符号化的程序逻辑进行推理,在抽象内存层描述和推断,在具体内存的操作上进行形式化验证。同时运用了静态分析的方法对复杂数据结构基于操作的性质进行自动化的验证,提高了验证的精度和准确性。实现了对操作系统内核复杂数据结构的高效、精确的形式化验证。
附图说明
[0032]图1为本专利技术形式化验证方法的步骤流程示意图;
[0033]图2为本专利技术应用在嵌入式操作系统内核的验证与测试流程图;
[0034]图3为本专利技术应用在嵌入式操作系统内核的验证与测试示意图。
具体实施方式
[0035]下面结合附图对本专利技术的一种优选实施方式做详细的说明。
[0036]如图1所示的操作系统内核复杂数据结构形式化验证方法,包括以下步骤:
[0037]S1、以内存块为基础建立内存模型:将复杂数据结构的操作进行函数形式的定义和描述,使程序层面的数据和结构操作映射到抽象的物理内存上。
[0038]本优选实施例所述内存模型建立的基础是内存块,因此首先需要确定内存块;具体的,通过将内存划分为不同的块来描述内存对象和操作,并定义基本数据类型,如数据的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种操作系统内核复杂数据结构形式化验证方法,其特征在于,包括以下步骤:S1、以内存块为基础建立内存模型:将复杂数据结构的操作进行函数形式的定义和描述,使程序层面的数据和结构操作映射到抽象的物理内存上;S2、基于内存模型,形式化定义和描述内存对象操作性质,建立基于内存状态语义的推理规则,得到内存操作过程中不同状态的断言;S3、在程序层面对抽象的内存和内存块的状态进行描述,通过定义符合复杂结构描述的文法和语义建立语义模型;S4、基于语义模型得到扩展的霍尔逻辑,并通过符号化的程序逻辑进行推理,得到扩展的霍尔逻辑推理;S5、建立内存模型到程序语义的映射,将语义模型应用于基于内存操作的推理规则上,并建立高层程序层和低层抽象内存层之间的一致性关系:将高层关于复杂数据结构操作的推理和证明对应和映射到低层的内存空间的操作上,对数据结构对象和具体内存对象的操作建立映射关系;S6、结合抽象内存层的断言以及扩展的霍尔逻辑推理,在具体内存的操作性质上进行验证:将内存状态断言和扩展的霍尔逻辑推理交给自动定理证明器进行证明,验证复杂数据结构的性质是否满足期望。2.根据权利要求1所述的操作系统内核复杂数据结构形式化验证方法,其特征在于,所述内存模型具体通过以下方法建立:S11、确定内存块,将内存划分为不同的块来描述内存对象和操作,并定义基本数据类型,进行形式化的刻画和表示;S12、建立内存操作,将程序中所有数据和结构的操作映射到抽象的物理内存上,并以未解释函数的形式对内存块上的基本操作进行定义和描述,标识某一内存块的具体状态。3.根据权利要求1所述的操作系统内核复杂数据结构形式化验证方法,其特征在于,所述内存操作过程中不同状态的断言具体通过以下方法得到:S21、定义内存模型语义,描述与语义相关的性质,由此得到不同内存操作的推理规则,定义内存操作的前置和后置条件,刻画内存因为操...

【专利技术属性】
技术研发人员:李薛剑王俊宜
申请(专利权)人:安徽大学
类型:发明
国别省市:

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

1