课题基金基金详情
针对安全关键系统的多语言编程形式化验证
结题报告
批准号:
61170051
项目类别:
面上项目
资助金额:
15.0 万元
负责人:
董渊
依托单位:
学科分类:
F0203.软件理论、软件工程与服务
结题年份:
2012
批准年份:
2011
项目状态:
已结题
项目参与者:
谭刚、张素琴、华保健、徐波、袁仲达、涂亚明、曹震、李叠
国基评审专家1V1指导 中标率高出同行96.8%
结合最新热点,提供专业选题建议
深度指导申报书撰写,确保创新可行
指导项目中标800+,快速提高中标率
客服二维码
微信扫码咨询
中文摘要
航空等领域中对安全关键软件的形式化验证有着迫切的需求,尤其关注存储安全性和正确性等特性。现实中的安全关键软件通常都采用多种语言共同实现,多语言编程使用非常普遍,而多语言接口部分常常是错误高发地带,而且也是目前研究的薄弱环节。为此,本项目以安全关键软件系统的完整形式化验证为远期目标,着重研究C语言与汇编语言这种具有代表性的多语言编程接口的形式化建模,以此为基础探索多语言编程的验证方法,并以广泛应用的开源嵌入实时操作系统为目标,开展原型系统验证研究。本项目将给出一种考虑多语言编程特征的程序建模和验证方法,解决其关键问题,为安全关键软件的构造提供技术支持。
英文摘要
航空等领域中对安全关键软件的形式化验证有着迫切的需求,尤其关注存储安全性和正确性等特性。本项目以安全关键软件系统的完整形式化验证为远期目标,着重研究C 语言与汇编语言这种具有代表性的多语言编程接口的形式化建模,以此为基础探索多语言编程的验证方法,并以广泛应用的开源嵌入实时操作系统为目标,开展原型系统验证研究。本项目在汇编代码语义模型建模、出具证明编译器(certifying compiler)的设计与实现,以及出具证明编译器与验证汇编代码的结合验证等方面,已进行大量研究工作,本项目已经初步给出一种考虑多语言编程特征的程序建模和验证方法,为安全关键软件的构造提供技术支持,基本完成了预期的研究目标。在汇编语言的机器模型建模方面,本课题采用了验证汇编代码(certified assembly code)的方式,设计了基于x86指令集的一个抽象机器模型,该模型基于已有的工作CAP,且进一步考虑了对操作系统代码中出现的特定语义的支持;本课题设计并实现了一个出具证明的编译器PLCC,该编译器接受C的一个较大子集,生成验证机器代码,PLCC能够自动将标注在源代码层级的断言自动翻译到目标代码层并进行证明(基于PLCC编译器的一个变种已用于中国科学技术大学软件学院编译器课程的教学实践);本项目设计并实现了出具证明编译器生成代码与手工构造的验证汇编代码联合验证的框架,在该框架中,自动生成的代码能够和手工代码及证明库进行联合验证和链接;本项目开始研究C/C++语言与JAVA接口的建模与描述,并着手构建工具原型,为多语言系统的安全性联合验证奠定了基础。
期刊论文列表
专著列表
科研奖励列表
会议论文列表
专利列表
DOI:--
发表时间:--
期刊:计算机科学
影响因子:--
作者:华保健;高鹰
通讯作者:高鹰
针对Android系统的Java/C++多语言接口建模与分析
  • 批准号:
    61272086
  • 项目类别:
    面上项目
  • 资助金额:
    84.0万元
  • 批准年份:
    2012
  • 负责人:
    董渊
  • 依托单位:
国内基金
海外基金