德国AbsInt公司是一家安全苛求软件研发、确认、验证和认证工具链的供应商,能够为客户提供完整的确保代码安全的性能分析工具套件以及软件分析、验证、确认和编译器技术相关咨询服务。AbsInt产品广泛地应用于工业、交通、汽车、通信和能源等行业的安全苛求软件研发过程中。

产品介绍

AbsInt 代码安全性能/资源分析套件主要包括以下几种产品:
    ♦  StackAnalyzer /最差情况堆栈用量分析工具 
    ♦  aiT WCET Analyzer/最差情况执行时间分析工具 
    ♦  TimingProfiler/代码执行时间估计分析工具 
    ♦  TimeWeaver/混合式最差情况执行时间分析工具
 
•  二进制代码分析工具
    ♦  StackAnalyzer 针对特定的处理器族和编译器,能够自动分析出任务的最差堆栈使用量,即避免了人为低估造成的堆栈溢出,又避免了人为高估而造成的资源浪费。
 
 
    ♦  aiT、TimingProfiler和TimeWeaver
    ▼  aiT 针对特定的处理器和编译器,能够分析出更接近实际运行情况的最差执行时间,真实反映系统性能。在分析过程中充分考虑了高速缓存和流水线(pipeline) 的影响,从而避免了过于保守的WCET 值,亦避免了硬件资源的浪费。
 
 
    ▼  TimingProfiler 针对特定的处理器族和编译器,能够从设计初期即开始对代码执行效率进行持续分析和估计,进而为芯片选型、不同算法方案的执行效率评估等提供依据。
 
 
 
    ▼  TimeWeaver对于某些复杂处理器,尤其是aiT不能支持的高级处理器,Absint公司提供了一种基于实际Trace数据的结合动态测试和静态分析的混合WCET分析工具。
 
 
 
    ▼  TimeWeaver可集成至PIL测试/HIL测试环境,进行处理器性能分析和验证工作。
 
 
    ▼  对于Infineon Aurix系列芯片,可采用TimeWeaver与Infineon DAS工具(免费)进行集成的方案,更加高效的执行分析过程。
 
 
    ♦  特点
    ▼  aiT/TimingProfiler/StackAnalyzer,代码静态分析工具,可直接导入编译后的.elf/*.out等二进制可执行文件进行自动分析,不会对现有的工具链造成影响
    ▼  TimeWeaver,动态测试+静态分析,利用二进制可执行文件进行静态分析,遍历所有代码执行路径。借助Trace分析结果,选用在实际处理器上的代码片段执行时间,综合分析得出代码的最差情况执行时间
    ▼  图形化显示程序调用图和控制流图,找出代码性能优化瓶颈,为优化提供依据
    ▼  遍历所有程序执行路径,对所有场景有效,无需提供测试用例(TimeWeaver所使用的Trace数据需要提供相应的测试环境及用例)
    ▼  支持批量测试,支持Jenkins,可实现软件持续集成测试 
    ▼  aiT和StackAnalyzer有认证支持包,能够提供认证支持服务( ISO-26262, IEC-61508, EN-50128 等) 
 
•  应用&案例
        丰田汽车非预期加速事件调查 ,2010 年 aiT 被 NASA 作为工业标准静态分析工具用于丰田汽车公司非预期加速事件调查,以排除与时间相关的软件缺陷。
 
        Daimler在动力总成控制系统等多个软件研发项目中,成功运用StackAnalyzer 工具进行相关分析,在研发前期即对软件的堆栈使用量情况进行有效分析和预估,避免了堆栈溢出等问题造成的项目延期和成本损失。
 
 

经纬恒润
北京市海淀区知春路7号致真大厦D座6层
电话:010-64840808
邮箱:market_dept@hirain.com
网址:www.hirain.com

AbsInt — 确保代码安全的性能/资源分析工具套件的更多相关文章

  1. SQL SERVER 查询性能优化——分析事务与锁(五)

    SQL SERVER 查询性能优化——分析事务与锁(一) SQL SERVER 查询性能优化——分析事务与锁(二) SQL SERVER 查询性能优化——分析事务与锁(三) 上接SQL SERVER ...

  2. Linux性能监控分析命令(四)—top命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...

  3. Linux性能监控分析命令(二)—sar命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...

  4. 性能测试——记XX银行保全项目性能问题分析优化

    记XX银行保全项目性能问题分析优化 数据库问题也许是大部分性能问题的关注点,但是JAVA应用与数据库交互的关节,JDBC 就像是我们人体的上半身跟下半身的腰椎,支持上半身,协调下半身运动的重要支撑点. ...

  5. windows系统与SQL SERVER 2008数据库服务性能监控分析简要

    软件系统性能测试体系流程介绍之windows系统与SQL SERVER 2008数据库服务性能监控分析简要 目前大部分测试人员对操作系统资源.中间件.数据库等性能监控分析都是各自分析各自的监控指标方式 ...

  6. 浅谈C++之冒泡排序、希尔排序、快速排序、插入排序、堆排序、基数排序性能对比分析之后续补充说明(有图有真相)

    如果你觉得我的有些话有点唐突,你不理解可以想看看前一篇<C++之冒泡排序.希尔排序.快速排序.插入排序.堆排序.基数排序性能对比分析>. 这几天闲着没事就写了一篇<C++之冒泡排序. ...

  7. KRPano资源分析工具使用说明(KRPano XML/JS解密 切片图批量下载 球面图还原 加密混淆JS还原美化)

    软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ...

  8. ArrayList和LinkedList的几种循环遍历方式及性能对比分析

    最新最准确内容建议直接访问原文:ArrayList和LinkedList的几种循环遍历方式及性能对比分析 主要介绍ArrayList和LinkedList这两种list的五种循环遍历方式,各种方式的性 ...

  9. ArrayList和LinkedList遍历方式及性能对比分析

    ArrayList和LinkedList的几种循环遍历方式及性能对比分析 主要介绍ArrayList和LinkedList这两种list的五种循环遍历方式,各种方式的性能测试对比,根据ArrayLis ...

随机推荐

  1. 对Dev的GridControl/GridView控件进行分组并展开操作

    今天在模块编写中碰到了对表格的分组,特意在这里把它记录下来. 一.背景:Dev14.1.3,GridControl,.NET4.0+C# 二.过程 1.GridControl设计 一共添加4列:在下面 ...

  2. WinForm自动记录从上次关闭位置启动窗体

    次功能主要是通过在注册表中读写窗体的Location属性来实现的.在窗体关闭前处理窗体的FormClosed事件,将窗体的Location属性值写入注册表,然后在窗体的Load事件中从注册表中读取保存 ...

  3. 初识IO流

    输入输出流,用来进行设备之间的数据传输. 是我们IO传输的数据是以文件的形式体现的,所以Java给我们提供了一个类,Flie用来描文件和目录 File(File parent, String chil ...

  4. SpringBoot系列教程web篇之重定向

    原文地址: SpringBoot系列教程web篇之重定向 前面介绍了spring web篇数据返回的几种常用姿势,当我们在相应一个http请求时,除了直接返回数据之外,还有另一种常见的case -&g ...

  5. 【笔试题】Java Data Types

    Java 知识测试 Java Data Types Question 1 Predict the output of the following program. class Test { publi ...

  6. 网站登录注册-Session 和token的总结

    1.为什么要使用session 因为http本身是无状态协议,无法确定你的本次请求和上次请求是不是你发送的.如果要进行类似论坛登陆相关的操作,就实现不了了. 2.Session 生成方式 浏览器第一次 ...

  7. SQL Server 数据库启动过程(用户数据库加载过程的疑难杂症)

    前言 本篇主要是上一篇文章的补充篇,上一篇我们介绍了SQL Server服务启动过程所遇到的一些问题和解决方法,可点击查看,我们此篇主要介绍的是SQL Server启动过程中关于用户数据库加载的流程, ...

  8. JSON学习(二)

    首先,定义一个实体类Person: import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; public ...

  9. 如何理解 PHP的依赖注入(DI) 和 控制反转(IoC)

    名词解释: IoC - Inversion of Control 控制反转 DI - Dependency Injection 依赖注入 依赖注入和控制反转说的实际上是同一个东西,它们是一种设计模式, ...

  10. Python 入门(1):hello world 到流程控制

    1.hello world 在D:\python\目录下新建文件hello.txt,编写代码如下 print("hello world!") 修改后缀名为.py,执行hello.p ...