产品概述
德国AbsInt公司是专注于安全苛求软件研发、确认、验证和认证的工具链供应商,能够为客户提供完整的确保代码安全的性能分析工具套件以及软件分析、验证、确认和编译器技术相关咨询服务。AbsInt产品广泛地应用于工业、交通、汽车、通信和能源等行业的安全苛求软件研发过程中。
产品介绍
AbsInt代码安全性能分析套件主要包括以下几种产品:
· aiT WCET Analyzer/最差情况执行时间分析工具
· StackAnalyzer/最差情况堆栈使用量分析工具
· TimingProfiler/代码执行时间分析工具
· Astrée/C代码运行时错误和数据竞争检查工具
· RuleChecker/C代码规则检查工具
· CompCert/形式化方法验证的优化C语言编译器
二进制代码分析工具
· aiT:针对特定的处理器和编译器,能够分析出较接近实际运行情况的最差执行时间,真实反映系统性能。在分析过程中充分考虑了高速缓存和流水线(pipeline)的影响,从而避免了过于保守的WCET值,亦即避免了硬件资源的浪费
· StackAnalyzer:针对特定的处理器族和编译器,能够自动分析出任务的最差堆栈使用量,即避免了人为低估造成的堆栈溢出,又避免了人为高估而造成的资源浪费
· TimingProfiler: 针对特定的处理器族和编译器,能够从初期开始对代码执行时间进行持续分析和评估
· 特点
① 代码静态分析工具,可直接导入编译后的.elf/*.out等二进制可执行文件进行自动分析,不会对现有的工具链造成影响
② 图形化显示程序的调用和控制流及不同程序点的机器状态,为优化提供依据
③ 遍历所有程序执行路径,对所有场景有效,无需提供测试用例
④ 支持批量测试,支持Jenkins,可实现软件持续集成测试
⑤ aiT和StackAnalyzer有认证支持包,能够提供认证支持服务(ISO-26262、IEC-61508、EN-50128等)
C代码分析工具
· Astrée
① Astrée能够确保找出所有的代码运行时错误(run-time error)和数据竞争(data race)问题,控制流和数据流基本达到100%的覆盖度
② Astrée分析方法,确保较低的误报率
③ Astrée在分析过程中能够考虑OSEK\AUTOSAR等OS配置环境的影响,提高分析结果精确度
④ Astrée的分析结果支持交互式浏览,能够帮助用户迅速定位问题,并进行备注及修改
⑤ Astrée可与dSPACE
TargetLink实现无缝集成
⑥ Astrée有认证支持包,能够提供认证支持服务(ISO-26262、IEC-61508、EN-50128等)
· RuleChecker:RuleChecker是C代码规则检查工具,支持以下代码规则标准
① MISRA 2004、2012、2012Amendment 1
② ISO/IEC TS17961:2013
③ SEI CERT Secure C
④ MITRE CWE
⑤ 客户订制标准
应用案例
· 丰田汽车非预期加速事件调查,2010年aiT被NASA作为工业标准静态分析工具用于丰田汽车公司非预期加速事件调查,以排除与时间相关的软件缺陷
· Daimler在动力总成控制系统等多个软件研发项目中,成功运用StackAnalyzer工具进行相关分析,在研发前期即对软件的堆栈使用量情况进行有效分析和预估,避免了堆栈溢出等问题造成的项目延期和成本损失