Coverity Prevent 简介




Coverity Prevent

Prevent(软件质量系统)是检测和解决C、C++、Java源代码中最严重的缺陷的领先的自动化方法。通过对您的构建环境、源代码和开发过程给出一个完整的分析,Prevent建立了获得高质量软件的标准。
静态源代码分析允许我们再软件开发生命周期的早期阶段发现和修复缺陷,节省数以百万计的相关成本。Prevent是业界标准,因为只有Coverity理解和掌握静态源代码分析技术所具有的严格的要求。

Coverity了解构建系统——Prevent通过在操作系统流程这个层次监测您的构建系统来获得每一个操作的清晰视图,展现您的软件。
Coverity了解源代码——Prevent检测比当今市场上任何其他工具都更多的源代码信息;代码的结构、含义和意图都被用来揭示其中的严重的错误和不安全性。

Coverity了解开发者——Prevent通过一个客户化的工作流、功能强大的分析器和易于使用的工具,能够使缺陷在几分钟内被定位,解决缺陷。

绘制软件DNA图谱(C/C++)
Prevent构建监测软件自动的检测您的编译系统执行的每一个操作。

Prevent可信编译器收集您代码中的语法、语义和依赖关系的细节信息。

一个完整的编译器描述库保存了所有的通过可信编译器收集的信息,所以分析引擎拥有关于源代码的全面的信息。

Prevent通过集成一个位于您的构建系统和操作系统之间的监测层,记录构建系统和操作系统的交互,获得对于您的构建系统的一个清晰的了解。这个监测层检测所有的发起的可执行程序,和所有打开和读写的文件。
当Prevent从您的构建系统检测到对您的编译器的调用,他执行很多步骤来了解调用操作及其对编译代码的影响。Prevent转换所有的命令来确切的了解本地预处理器和编译器将如何正确生成可执行程序。
构建系统中的一个嵌入层记录每个文件的特有的编译,Prevent提供一个工具使您能够组合这些属性到他们的描述库和可执行程序中。
Prevent编译很多种类型的C和C++源代码,包括各个编译器实现的主要的语言扩展和C、C++的各种方言。使用一个预处理器,Prevent也能够处理非标准的构造为语义等价构造,标准构造是前端分析器能够解释和理解的。
软件DNA图谱包含了足够的构建系统和源代码信息,能够从软件DNA图谱构建一个执行程序。他收集了编译器用来生成可执行代码的所有的数据,也是保存源代码相关的所有数据的唯一的地方。
您可以从保存在软件DNA图谱中的信息创建可执行程序,但反之不可。您不能从任何可执行程序中创建软件DNA图谱,因为构建系统、编译器和链接器在转换源代码到可执行程序时都会丢失信息。只有Coverity对于您的构建系统的理解允许您创建一个真实的软件DNA图谱,没有其他方法。

检测严重的缺陷(C/C++)
Prevent源代码分析引擎利用软件DNA图谱来分析您的代码的各个方面。
Prevent模块化缺陷检测平台能够使很多模块(或检查器)同时分析您的代码,查找不同类别的缺陷。

Prevent预配置的库说明了作为您的产品的一部分的第三方库的APIs和功能。
在构建了软件DNA图谱以后,Prevent分析图谱来构建一个对于您的代码的完整的分析。Prevent应用很多、独特的分析引擎来分析所有执行模式的代码。分析引擎提供给缺陷检测检查器最精确的源代码描述,来查找缺陷。
在分析引擎上构建了一系列的模块来检测三类主要的缺陷:导致系统崩溃的缺陷(内存错误、逻辑错误、指针错误等);安全性问题;和并发缺陷。这种模块化的分析架构允许Coverity持续的开发用于其他类别错误的模块。

 
能够发现的C/C++缺陷
并发
死锁

错误使用的阻塞调用

性能下降
内存泄漏

文件句柄泄漏
定制的内存和网络资源泄漏

数据库连接泄漏

导致崩溃的缺陷
空指针引用
释放后引用

多次释放
不正确的内存分配
不匹配的数组新建/删除

不正确的程序行为
逻辑错误导致的死代码

未初始化变量

负数的无效引用
不正确的APIs使用
STL使用错误

API错误处理
C/C++安全性问题

安全编码缺陷
缓冲区溢出

整形溢出

缺失的/不充分的恶意数据和字符串输入的验证

格式化字符串的不安全

SQL注入攻击
交叉站点脚本攻击
 

特点和优势
Coverity产品专长于最准确的找到最严重和最难检测的缺陷。我们很多的竞争对手专注于简单的标识尽可能多的可能的缺陷。但在Coverity,我们认为找到严重的缺陷和安全性问题比数字游戏更重要。重要的不是你找到了多少缺陷,而是那些缺陷的类型。

以下特点使得Coverity Prevent特别:
精确性——Coverity Prevent的特别之处在于平均小于20%的误报率。当许多其他的源代码分析产品以很高的误报率使得其不可用时,Coverity的虚假路径裁剪、统计分析和其它创新减少了误报的产生。附加的配置和微调能够进一步减少误报率。

分析的深度——Coverity Prevent提供过程间数据流分析和统计分析,评审整个程序的交互和所有的可能的路径。Coverity Prevent检查企业特定的APIs和标志使用中的不一致性,精确的检测QA、安全评审和现场会发生的缺陷。当许多竞争工具仅提供表面的分析时,Coverity Prevent全面的分析您的代码。
分析的广度——Coverity Prevent采用查找最严重的错误的最先进的技术,提高您的产品的质量和安全性。Coverity Prevent可以检测严重的问题,例如系统崩溃、内存泄漏、内存错误、不确定行为、并发缺陷和安全性问题。
低拥有成本——Coverity Prevent无缝的与您已有的环境集成,能够快速部署和配置。
可扩展——Coverity Prevent使您能够在我们的强大的分析引擎上创建定制的检查器,来满足您的开发组织和代码的特定需求。您可以设置定制的规则,来强化编码标准或者检测代码中的错误。
强大的可配置性——Coverity Prevent能够快速的分析您的代码,通常百万行的代码仅需要几个小时,其他的工具需要几天,甚至几个星期来分析大规模代码。
 
支持的平台
Coverity Prevernt可以支持广泛的平台和编译器。
C/C++源代码分析器
支持的平台
 Apple Mac OS X 10.4
Cygwin

FreeBSD
HPUX

Linux
Mac OS X
NetBSD (2.0)
Solaris Sparc
Solaris X86
Windows
支持的C/C++编译器
ARM ADS/RVCT
Freescale Codewarrior

GNU C/C++
Green Hills

HP aCC
Hi-Tech PICC
IAR
Intel C/C++

Marvell MSA
Microsoft Visual C++
QNX
Renesas

Sun C/C++
TI Code Composer
Wind River
支持任何其他的ANSI C兼容的编译器
Coverity不需要任何手工工作或针对您的构建文件的修改就可以与您的构建系统集成。
系统需求(C/C++)
· 2.0Ghz x86或UltraSparc 3/3i处理器或同等速度的处理器

· 1 GB内存

500 MB空闲磁盘空间用于安装,3倍于代码大小的空间用于产品运行

谁有免费的,传我一个:)

你可能感兴趣的:(工具,平台,引擎,编译器,产品,代码分析)