[发明专利]一种操作系统规范形式化验证与测试方法有效
申请号: | 201810179502.3 | 申请日: | 2018-03-05 |
公开(公告)号: | CN108509336B | 公开(公告)日: | 2021-05-25 |
发明(设计)人: | 郭建;朱晓冉;张民 | 申请(专利权)人: | 华东师范大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/41 |
代理公司: | 上海麦其知识产权代理事务所(普通合伙) 31257 | 代理人: | 董红曼 |
地址: | 200062 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 操作系统 规范 形式化 验证 测试 方法 | ||
1.一种操作系统规范形式化验证与测试方法,其特征在于,包括以下步骤:
步骤一:根据已有的操作系统自然语言规范建立形式化语义模型,并从自然语言规范中提取性质,用形式化语言来描述性质;所述性质包括操作系统应用性质和操作系统内核性质;
步骤二:通过所建立的形式化语义模型中对操作系统应用进行验证;若不满足要求,则对所述形式化语义模型或操作系统应用进行修正直至所述形式化语义模型及应用满足要求,若满足,则保留形式化语义模型;
步骤三:根据正确的形式化语义模型,使用基于模型的测试用例生成方法生成操作系统内核的测试用例集;
步骤四:使用自动生成的测试用例对已实现的操作系统内核代码进行测试,若测试不通过,则需要修复操作系统内核代码的错误,并重新再开发板上编译测试,直至通过所有的测试用例;若测试通过,则可判断操作系统内核实现在一定程度上的正确性;
步骤五:将通过验证的操作系统应用在所建立的形式化语义模型中执行,同时在实际的操作系统实现中执行操作系统应用,使用互模拟的方法来检查操作系统内核实现的正确性,即若操作系统应用在形式化语义模型中的行为与在具体内核实现中的行为不一致,则修改操作系统内核代码的错误,并重新执行互模拟操作,直至互模拟检查通过。
2.如权利要求1所述的操作系统规范形式化验证与测试方法中,其特征在于,所述步骤一建立形式化语义模型包括以下步骤:
步骤A1:从操作系统规范中提取所要建模与描述的系统服务、操作系统任务调度、资源管理、事件管理与报警机制相关的自然语言规范;
步骤A2:根据自然语言规范提取性质规范,并用形式化语言描述;
步骤A3:使用形式化语义模型定义自然语言规范中系统服务、任务调度、资源管理操作系统内核管理机制的执行规则;
步骤A4:定义用来实现操作系统应用程序的程序语言语义,并与步骤A3中建立的形式化语义模型结合,形成形式化规范。
3.如权利要求2所述的操作系统规范形式化验证与 测试方法中,其特征在于,所述步骤二对形式化语义模型进行验证以及修正包括以下步骤:
步骤B1:检验操作系统自然语言规范是否正确,若错误,在修正规范文件,并修正其相对应的形式化语义模型;
步骤B2:验证所建立的形式化语义模型是否正确,若错误,则修正所述形式化语义模型;若正确,则继续下一步骤;
步骤B3:检验所述性质是否符合规范且描述正确,若错误,则修正性质描述;若正确,则继续下一步骤;
步骤B4:验证所述操作系统应用是否正确,若错误,则修正操作系统应用代码,将修正后的代码放入形式化语义模型中重新验证,直至所有性质验证通过为止。
4.如权利要求3所述的操作系统规范形式化验证与测试方法中,其特征在于,所述B2,B4中通过K 框架使用模型检测的方法对形式化语义模型及操作系统应用程序进行形式化验证;若验证通过,则形式化语义模型及应用程序均符合规范,否则形式化语义模型或应用中存在错误。
5.如权利要求1的所述的操作系统规范形式化验证与测试方法中,其特征在于,所述步骤三生成测试用例包括以下步骤:
步骤C1:配置操作系统对象的相关属性,包括任务是否可抢占、资源优先级、报警器所对应时钟;
步骤C2:根据所配置的操作系统对象的属性,给出系统服务的执行要满足的约束,也就是操作系统在执行系统服务之前的初始状态;
步骤C3:根据操作系统对象的配置,给出操作系统可能到达的末状态,从而生成可以从初始状态到末状态的系统服务序列集合。
6.如权利要求5所述的操作系统规范形式化验证与测试方法,其特征在于,所述步骤C3通过工具K框架来对测试用例生成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学,未经华东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810179502.3/1.html,转载请声明来源钻瓜专利网。