0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于Polyspace静态分析的具体作用分析和介绍

MATLAB 来源:djl 2019-09-18 15:41 次阅读


更快地投放市场的趋势容易产生以下误解:静态分析只是发现错误。软件开发人员必须尽可能多地消除错误,并会使用错误快速发现工具,但很可能仍然存在一些错误。这种做法对于非安全关键型应用(如智能手机应用)可能足够了,但对于安全关键型应用可能是不够的。

因此,安全关键型应用需要更严格的方法来验证安全性和稳健性,这就是静态分析可以带来的其他好处。在本文中,我们将消除静态分析只是发现错误这一误解,并证明它可以帮助验证是否符合编码标准,生成有关代码质量的指标,并可以在软件开发的任何阶段使用。

毫无疑问,发现错误肯定是静态代码分析的一个重要方面。但是,静态分析技术的范围广泛,从简单的语法检查或基于启发式的方法,到基于形式化方法的高级验证,不一而足。

这一范围还体现在市场上各种各样的静态分析工具。例如,一些高级编译器有一个采用静态分析形式的内置语法检查器。在该范围的另一端是基于形式化方法的工具,如可以执行语义分析的 Polyspace,为您的软件提供详细的运行行为。

Polyspace Bug Finder 是一种可以帮助发现错误的静态分析工具,但它还可用于:

检查您的软件是否符合编码标准,如 MISRA C/C++、JSF++ 和自定义规则

生成代码度量指标以帮助您改进代码质量。

此外,使用 Polyspace Code Prover,您还可以证明您的软件不会由于特定类型的关键运行时错误而崩溃。

因此,这些工具已经超出了简单的错误发现,在验证和确认过程中非常有价值。例如,下图中的代码是形式验证的结果,该结果确认在任何运行条件下都不会发生溢出错误:

关于Polyspace静态分析的具体作用分析和介绍

如前所述,您可以使用静态分析来检查您的代码是否符合特定的编码准则或标准,从而避免使用不安全或不可靠的结构。它还可以帮助您捕捉表明代码质量的关键指标,如圈复杂度、执行不到的代码、使用共享全局变量和递归 、省去编写测试用例的开销。这些指标可以帮助您找出设计问题,例如可能最终影响软件性能和可靠性的代码架构。

使用非初始化变量或不受保护的共享变量可能在特定的测试用例中显示意想不到的结果。然后,您可能会承担调试任务,花费大量的时间试图找出问题所在。更糟糕的是,由于此类运行时错误的不可预知性,这些缺陷可能不会在测试过程中显示出来。

静态分析更为广泛的优势并不广为人知,因此它在软件开发工作流程的后期才被采用。因为它被简单地认为是一种发现错误的方法,所以它通常在软件开发的最后阶段才被采用(例如,静态分析是质量工程团队发布代码之前的最后一关)。超过90%的潜在客户在进入了项目的结束阶段后才与我们联系,了解我们的静态分析解决方案。

但是,如果您想利用上面讨论的所有优势,则应在开发的早期阶段引入静态分析。实际上,使用编译器就是一个这样的例子,因为编译器是一个非常简单的静态分析工具,可帮助开发代码的语法和语义。研究发现,尽早发现和修复编码错误可以获得显著的成本效益。还可以缩短您所开发软件所需的测试时间。因此,静态分析在早期引入您的工作流非常重要,它远不是简单地识别错误。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4756

    浏览量

    68370
  • 编译器
    +关注

    关注

    1

    文章

    1618

    浏览量

    49057
  • 静态分析
    +关注

    关注

    1

    文章

    39

    浏览量

    3880
收藏 人收藏

    评论

    相关推荐

    汽车异构硬件平台开发如何进行静态代码分析

    先进的静态代码分析工具,其新版本中引入的多CCT功能为开发人员提供了强大的支持,该功能不仅简化了多编译器环境下的代码分析过程,还可以极大增强代码的质量和安全性。
    的头像 发表于 10-09 16:15 461次阅读
    汽车异构硬件平台开发如何进行<b class='flag-5'>静态</b>代码<b class='flag-5'>分析</b>

    Cadence Allegro 17.4PCB阻抗分析功能操作说

    Cadence Allegro 17.4布线阻抗分析可以让工程师能直观的分析出阻抗的具体情况,能够评估每根走线上的阻抗变化情况,对工程师衡量信号的质量起着关键性的作用
    发表于 09-23 17:11 1次下载

    放大电路的基本分析方法有哪两种

    放大电路是电子学中的基础组成部分,用于增强信号的幅度而不改变其基本特性。在电子工程中,放大电路的设计和分析是至关重要的。放大电路的基本分析方法主要有两种:直流分析和交流分析。 直流
    的头像 发表于 09-23 10:40 344次阅读

    基于VSS软件的汽车座椅舒适性仿真分析

    本文介绍了应用ESI的Virtual Seat Solution(VSS)对汽车座椅舒适性仿真分析。在设计前期对座椅H点及静态舒适性进行分析,并通过实验对标,确定了
    的头像 发表于 09-20 14:37 338次阅读
    基于VSS软件的汽车座椅舒适性仿真<b class='flag-5'>分析</b>

    对放大电路的分析方法介绍

    放大电路是电子技术中非常重要的组成部分,它广泛应用于信号处理、通信、测量等领域。对于放大电路的分析,通常可以分为直流分析和交流分析两种情况。下面我们将介绍这两种
    的头像 发表于 08-07 10:08 497次阅读

    基于ANSYS的高速磨削电主轴动静态性能分析

    以国产120MD60Y6型高速磨削电主轴为研究对象,使用有限元分析方法,基于ANSYS Workbench建立高速电主轴模型,先分析静态特性,计算工作条件下电主轴前端所受径向力和轴承径向刚度;然后
    的头像 发表于 08-05 11:20 152次阅读
    基于ANSYS的高速磨削电主轴动<b class='flag-5'>静态</b>性能<b class='flag-5'>分析</b>

    如何使用Polyspace Code Prover来统计堆栈

    前一篇文章介绍了堆栈和内存的一些背景知识。本次介绍如何使用 Polyspace Code Prover来统计堆栈,如何使用这些数据为软件优化服务。
    的头像 发表于 07-25 14:06 451次阅读
    如何使用<b class='flag-5'>Polyspace</b> Code Prover来统计堆栈

    神经网络在预测分析中的作用

    预测分析领域中表现出了卓越的性能。本文将深入探讨神经网络在预测分析中的作用,结合具体案例和数字信息,详细阐述其工作原理、优势以及应用前景。
    的头像 发表于 07-01 11:53 621次阅读

    IAR通过多架构认证的静态分析工具加速代码质量自动化

    公司推出经TÜV SÜD认证的C-STAT静态分析工具,适用于最新发布的IAR Embedded Workbench for RISC-V V3.30.2功能安全版。
    的头像 发表于 06-19 15:49 349次阅读

    FPGA 高级设计:时序分析和收敛

    今天给大侠带来FPGA 高级设计:时序分析和收敛,话不多说,上货。 这里超链接一篇之前的STA的文章,仅供各位大侠参考。 FPGA STA(静态时序分析) 什么是静态时序
    发表于 06-17 17:07

    频谱分析仪使用方法 频谱分析仪的作用

    频谱分析仪是一种用于测量信号频谱成分的电子测量仪器,广泛应用于通信、电子、电力、科研等领域。本文将详细介绍频谱分析仪的使用方法和作用。 一、频谱分析
    的头像 发表于 05-31 17:17 936次阅读

    信号分析和过滤器的作用

    在通信、电子工程、计算机科学等多个领域,信号分析与过滤器扮演着举足轻重的角色。信号分析不仅涉及信号的获取、处理、分析和判断,更是从复杂的信号中提取有用信息,进行精确解读的关键过程。而过滤器,作为一种特定的信号处理技术,则在此过程
    的头像 发表于 05-16 17:20 650次阅读

    如下电流检测电路具体是怎么分析的?

    在如图电路中,+和DC+之间串接低值电阻,检测正母线流过电流。 请教该电路具体是怎么工作的?尤其是在这两个三极管的工作过程?如果电流从左往右流过,+点电压高于DC+,该怎么分析? 如果电流是回馈
    发表于 03-03 11:29

    直流屏的作用及原理

    直流屏的作用及原理  直流屏也称为DVST,是一种用于显示图像的电子设备。它在计算机科学和电视技术中起着重要的作用。本文将详细介绍直流屏的作用和原理。
    的头像 发表于 02-02 17:26 3343次阅读

    生物信号采集与分析系统用户手册

    详细介绍了BL-420N型生物信号采集与分析系统的功能以及具体的操作方法。
    发表于 12-07 09:54 4次下载