Polyspace Client for Ada

 

Polyspace Client for Ada

证明源代码中不存在运行时错误

Polyspace Client for Ada

证明不存在严重的运行时错误

检查 Ada83 或 Ada95 代码操作的运行时正确性。识别无论运行时条件如何都不会遇到运行时错误的语句。在事件跟踪、变量值范围和与发现相关的调用树的支持下,分析运行时漏洞。Polyspace Client for Ada 使用形式化方法来检测其他测试手段无法找出的错误。根据所有可能的输入,在不执行代码的情况下分析所有代码路径。

桌面端的交互式分析

组织和配置您的工程,并在将代码提交到源代码存储库之前对一部分软件工程运行静态代码分析以验证代码更改是否符合要求。使用 Polyspace Client for Ada 生成报告,并审核和对结果分类。使用类似调试器的视图步进运行时错误之前的每个语句,以找到复杂 Bug 的根本原因。

改进软件设计和代码理解

检查软件控制流和数据流,以查看与变量和运算符相关联的范围信息。

优化软件性能

通过识别安全可靠的运算(如除以零)来删除防御性代码。检测无法通过任何执行路径到达的代码分支以及逻辑和程序结构上的错误,并删除它们以减少内存占用。

分析全局变量用法

减少调试全局变量(包括任务或线程共享的变量)的读/写操作所花费的时间。使用并发访问图了解导致数据竞争的控制流和数据流。识别未使用的全局变量以进行代码优化。

静态应用程序安全性测试

通过详尽地对潜在的易受攻击的 Ada 语句进行压力测试,如内存访问、缓冲区溢出或数值溢出,证明应用程序没有严重的安全漏洞。支持 20 条 CWE 弱点规则。利用 Polyspace Client for Ada 的分析结果来补充或取代模糊测试,转而关注易受攻击的已识别操作。

改进和补充稳健性和功能测试

使用 Polyspace Client for Ada,通过将测试重点放在已被证明不安全的语句(如除以零或溢出)上来改进稳健性测试。利用控制流和数据流分析以及计算出的函数参数和全局变量范围,使用 Polyspace Client for Ada 提供的结果来创建和维护边界测试与分区测试。