[发明专利]一种基于源代码的模型验证装置有效
申请号: | 202010011072.1 | 申请日: | 2020-01-06 |
公开(公告)号: | CN111240972B | 公开(公告)日: | 2022-03-08 |
发明(设计)人: | 史建琦;焦明月;黄滟鸿;孙文圣;战云龙;郭欣 | 申请(专利权)人: | 上海丰蕾信息科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F30/20 |
代理公司: | 北京辰权知识产权代理有限公司 11619 | 代理人: | 付婧 |
地址: | 200062 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 源代码 模型 验证 装置 | ||
本发明公开了一种基于源代码的模型验证装置,所述装置包括:源代码获取模块,用于获取目标源代码;第一模型生成模块,用于根据AADL建模技术将所述目标源代码进行建模后生成AADL模型;第二模型生成模块,用于基于预设转换方式将所述AADL模型转换生成时间自动机模型;模型检查模块,用于利用预设模型检测器对所述时间自动机模型进行检查。因此,采用本申请实施例,可以提高验证效率。
技术领域
本发明涉及计算机技术领域,特别涉及一种基于源代码的模型验证装置。
背景技术
随着信息技术的迅猛发展,软件系统的功能日益繁多、复杂,规模越来越大,其面临的安全性挑战也越来越严峻。特别是对于航空航天、汽车电子、工业控制、军事系统这一类安全攸关系统,软件的可信验证显得尤为重要。形式化验证技术是在形式化规约的基础上,通过深入分析与理解系统,验证系统是否满足其给定的性质,或发现系统不能满足该性质的条件。
目前主要的形式化验证方法是定理证明。定理证明主要利用逻辑和数学手段,通过演绎推理来验证软件的模型或代码是否满足设定的性质。由于需要富有经验的用户提供大量的公理、前提条件及其他的系统相关信息才能满足验证,从而降低了验证效率。
发明内容
本申请实施例提供了一种基于源代码的模型验证装置。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
本申请实施例提供了一种基于源代码的模型验证装置,所述装置包括:
源代码获取模块,用于获取目标源代码;
第一模型生成模块,用于根据AADL建模技术将所述目标源代码进行建模后生成AADL模型;
第二模型生成模块,用于基于预设转换方式将所述AADL模型转换生成时间自动机模型;
模型验证模块,用于利用预设模型检测器对所述时间自动机模型进行检查。
可选的,所述装置还包括:
源代码生成模块,用于采用电子数据表单对系统、设备和软件接口进行处理后生成目标源代码。
可选的,所述源代码生成模块,包括:
表单生成单元,用于采用电子数据表单对系统、设备和软件接口进行处理后生成处理后的电子数据表单;
第一模型生成单元,用于基于形式化模型转换技术将所述处理后的电子数据表单进行转换生成电子数据表单模型;
数据获取单元,用于基于形式化的性质描述语言获取所述电子数据表单模型中的关键结构和属性;
源代码获取单元,用于根据关键结构和属性获取关键部分源代码,将所述关键部分源代码作为目标源代码。
可选的,所述第一模型生成模块,包括:
源代码转换单元,用于将所述目标源代码转换成AADL所需的构件集合,所述构件集合包括软件构件、执行平台构件及系统构件;
包获取单元,用于获取所述目标源代码对应的包;
系统生成单元,用于基于所述包将所述构件集合组织后生成实时系统;
第二模型生成单元,用于将所述实时系统确定为AADL语言子集,生成AADL模型。
可选的,所述系统生成单元,包括:
属性特征获取子单元,用于获取所述包对应的属性和特征;
软件和硬件建模子单元,用于利用所述构件集合对系统中的软件和硬件进行建模;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海丰蕾信息科技有限公司,未经上海丰蕾信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010011072.1/2.html,转载请声明来源钻瓜专利网。