运行时间错误

运行时错误最常是指在执行程序期间出现的问题。在软件或硬件中可能发生运行时错误,导致它发生故障。他们很重要,因为它们可能导致严重的安全,安全或业务运行问题。软件运行时误差包括算术例外等逻辑错误。它们还可以包括控制和数据流相关的缺陷,例如未初始化的变量或指针,内存相关的缺陷,例如缓冲区溢出,或诸如竞争条件的并发缺陷。PolySpace静态分析可以提供用于运行时错误检测的解决方案。

为什么要担心运行时间错误?

运行时差可能导致高完整性应用程序的关键系统失败,导致灾难性的结果。运行时错误被归咎于高调示例中系统故障的根本原因。这些包括算术溢出运行时误差,该时间误差落后于火箭的板载计算机,以及竞争条件运行时误差,这导致医疗器械注入致命的辐射量。

运行时错误检测

对高完整性应用程序执行运行时错误检测至关重要。但是,这种错误检测是具有挑战性的,因为它涉及预期所有可能的软件执行。如下所述,预测所有路径都很困难:

“在理想的情况下,您希望在程序中测试所有可能的行为。这意味着测试至少一次可能的输入或每种可能的决策路径的所有可能组合。这是一个高尚的,但完全是不切实际的目标。例如,在软件测试的艺术中,Glen Ford Myers描述了一个只有五个决定具有10 ^ 14独特执行路径的小程序。他指出,如果您可以每五分钟编写,执行和验证一个测试用例,则需要令人遗憾地测试该计划的30亿多年。显然,理想的情况是超越的,因此您必须使用近似值的理想。正如您所看到的,功能测试和覆盖测试的组合提供了合理的第二个最佳替代方案。基本方法是选择测试一些功能,一些具有最高概率暴露出错的覆盖范围。“[1]

由于可能有万亿可能需要测试,很明显,通过单独进行测试,常规错误检测不足并且效率低下。使用更好的解决方案多血糖静态分析要检测运行时错误,可以使用它来验证每个可能的决策路径的所有可能的输入组合。它使用了一种称为抽象解释的正式方法。该技术通过在编译时间验证软件应用程序的动态/运行时性能来桥接传统静态分析技术与动态测试之间的差距。

在不执行程序本身,抽象解释调查程序的所有可能的运行时行为,不仅证明了复杂的运行时间错误的存在,而且还要证明他们的缺席。您可以使用PolySpace产品来识别仅在特下载188bet金宝搏定运行时条件下发生的那些奇特的运行时错误。了解更多信息PolySpace静态分析解决方案

结合抽象解释和静态代码分析使您可以:


1伯杰,“嵌入式软件测试的基础知识。“嵌入式。2011年。

Alenia Aermacchi.

“对于我们来说,基于模型的设计的关键优势是能够集中设计和开发而不是低级编码,验证和认证任务。结果是更高的质量,DO-178B认证软件,更快的迭代。“