我正在尝试将frama-c / jessie应用于我们客户的专有安全关键系统模块。正在分析的函数相当大(图像700未注释的行计数),包含许多条件语句以及复杂的(&&,||等)。
我在Ubuntu VM 64位计算机上运行时收到此错误消息。它出现错误137与内存大小等有关。但我不太确定。
非常感谢任何有关如何处理此错误的建议。
[
formal_verification]$ frama-c -jessie test.c
[kernel] preprocessing with "gcc -C -E -I. -dD test.c"
[jessie] Starting Jessie translation
[jessie] Producing Jessie files in subdir test.jessie
[jessie] File test.jessie/test.jc written.
[jessie] File test.jessie/test.cloc written.
[jessie] Calling Jessie tool in subdir tests.jessie
Generating Why function testFun
[jessie] Calling VCs generator.
gwhy-bin [...] why/test.why
Computation of VCs...
Killed
make: *** [test.stat] Error 137
答案 0 :(得分:1)
有很多条件语句以及复杂的(&&,||等)。
在分析具有大量嵌套条件的函数时,您应该使用所谓的“快速WP”选项。否则,目标甚至不需要非常大而导致爆炸。
恰好是Jessie's manual中用于将选项传递给Why的示例(它实际上是一个为什么选项):
-jessie-why-opt=<s>
give an option to Why (e.g., -fast-wp)
因此,您将使用-jessie-why-opt=-fast-wp
。