面向错误检测的C++程序静态分析技术

基本信息
批准号:61003026
项目类别:青年科学基金项目
资助金额:20.00
负责人:许中兴
学科分类:
依托单位:中国科学院软件研究所
批准年份:2010
结题年份:2013
起止时间:2011-01-01 - 2013-12-31
项目状态: 已结题
项目参与者:颜深根,陈柏强
关键词:
C++程序分析编译
结项摘要

本项目研究针对C++程序的静态分析查错技术,静态分析是提高软件正确性和安全性的重要技术,其中符号执行是最为精确的一种静态分析技术。C++语言是工业界广泛使用的大型系统软件编程语言,既有与C语言同样的低级内存操作语义,又有面向对象的语言特征,是一种极为强大和复杂的语言。本项目力图将符号执行分析技术扩展到C++程序上,使其能够精确模拟C++语言的语义,建立新的内存模型和对象模型,支持C++中的继承,虚函数,临时对象,类型转换,构造析构函数,new/delete操作符,模板,函数重载等主要语言特征。在技术研究的基础上,开发一个产品级质量的C++静态分析工具,使其能够分析中等规模的真实的C++项目。研究将在一个已有的C语言静态分析工具和一个成熟的C++编译器前端基础上进行。

项目摘要

在本项目中,我们研制了针对C和C++语言的静态分析工具Canalyze. Canalyze的目标是自动检测C和C++代码中的缺陷。Canalyze通过对代码中的每一条路径进行符号模拟执行来分析代码。这样可以对代码中可能出现的各种状态进行系统化的探索。通过这样的方式发现了很多代码缺陷,例如在GDB, Coreutils, sed等广泛使用的开源程序中。Canalyze中设计并实现了一个强大的内存建模方法,使得工具能够对指针,数组元素,结构体域等语言特性进行精确的分析和推理。

项目成果
{{index+1}}

{{i.achievement_title}}

{{i.achievement_title}}

DOI:{{i.doi}}
发表时间:{{i.publish_year}}

暂无此项成果

数据更新时间:2023-05-31

其他相关文献

1

基于LS-SVM香梨可溶性糖的近红外光谱快速检测

基于LS-SVM香梨可溶性糖的近红外光谱快速检测

DOI:
发表时间:
2

基于文献计量学和社会网络分析的国内高血压病中医学术团队研究

基于文献计量学和社会网络分析的国内高血压病中医学术团队研究

DOI:10.11842/wst.20190724002
发表时间:2020
3

高分五号卫星多角度偏振相机最优化估计反演:角度依赖与后验误差分析

高分五号卫星多角度偏振相机最优化估计反演:角度依赖与后验误差分析

DOI:10.7498/aps.68.20181682
发表时间:2019
4

铁路大跨度简支钢桁梁桥车-桥耦合振动研究

铁路大跨度简支钢桁梁桥车-桥耦合振动研究

DOI:10.3969/j.issn.1000-0844.2017.05.0820
发表时间:2017
5

基于暂态波形相关性的配电网故障定位方法

基于暂态波形相关性的配电网故障定位方法

DOI:10.7500/aeps20191122006
发表时间:2020

许中兴的其他基金

相似国自然基金

1

面向真实错误程序的高阶变异错误定位技术研究

批准号:61902015
批准年份:2019
负责人:刘勇
学科分类:F0203
资助金额:29.00
项目类别:青年科学基金项目
2

面向软件静态检测缺陷的推荐与评估技术研究

批准号:61802394
批准年份:2018
负责人:许丽丽
学科分类:F0205
资助金额:27.00
项目类别:青年科学基金项目
3

面向动态Web应用的错误分析与定位技术研究

批准号:61672506
批准年份:2016
负责人:高楚舒
学科分类:F0203
资助金额:63.00
项目类别:面上项目
4

恶意软件静态分析与检测关键技术研究

批准号:61402179
批准年份:2014
负责人:宋富
学科分类:F0201
资助金额:27.00
项目类别:青年科学基金项目