KLEE命令行参数一览

  • 文献标题Overview of KLEE’s main command-line options
  • 文献作者The KLEE Team.
  • 文献来源http://klee.github.io/docs/options/
  • 阅读日期2015年12月24日09时许
  • 阅读程度速读

启发式搜索

  • KLEE提供四种启发式搜索模式:

    1. Depth-First Search (DFS): 深度优先.
    2. Random State Search:随机状态选择.
    3. Random Path Selection: 随机路径选择(见KLEE OSDI’08).
    4. Non Uniform Random Search (NURS):根据所给分发,随机选择状态。分发可基于到未覆盖指令的最小距离(MD2U),查询代价等
  • 选择搜索模式的参数是--search,例如
    $ klee --search=dfs demo.o
    $ klee --search=random-path demo.o

  • search的参数列表为:

    $ klee --help
    -search - Specify the search heuristic (default=random-path interleaved with nurs:covnew)
      =dfs - use Depth First Search (DFS)
      =random-state - randomly select a state to explore
      =random-path - use Random Path Selection (see OSDI'08 paper)
      =nurs:covnew - use Non Uniform Random Search (NURS) with Coverage-New heuristic
      =nurs:md2u - use NURS with Min-Dist-to-Uncovered heuristic
      =nurs:depth - use NURS with 2^depth heuristic
      =nurs:icnt - use NURS with Instr-Count heuristic
      =nurs:cpicnt - use NURS with CallPath-Instr-Count heuristic
      =nurs:qc - use NURS with Query-Cost heuristic
    
  • 交错式启发式搜索

    在KLEE中可以循环使用交错的启发式搜索。例如
    $ klee --search=random-state --search=nurs:md2u demo.o

  • KLEE中默认的搜索模式

    random-path 和 nurs:covnew.的交错模式。

查询记录

为了记录KLEE进行符号执行的查询过程,可以使用下列参数:

  • --use-query-log=TYPE:FORMAT

    TYPE:记录的内容

    • all:记录KLEE在没有优化前的所有查询。

    • solver: 只记录传递给KLEE求解器的查询。注意,一些未优化的查询可能在被KLEE执行前没有执行或修改。

    FORMAT:记录的格式

    • pc,KQuery格式
    • smt2,SMT-LIBv2格式。
  • --min-query-time-to-log=TIME (毫秒)

    用于记录超过一定时间限制的查询。

    TIME:毫秒计

    • 等于0时: (默认): 记录所有
    • 小于0时: TIME为负数时,只记录超时的查询,超时值由参数--max-solver-time描述。
    • 大于0时: only queries that took more that TIME milliseconds should be logged.(看不明白 ( ╯□╰ ))

入口点

修改入口点的参数为-entry-point=FUNCTION_NAME, * FUNCTION_NAME*指用作执行入口的函数名。

调用klee-assume

在缺省情况下,当假定的condition不合理时,KLEE会报告一个错误,而使用参数-silent-klee-assume,则可以在此类情况下,悄然结束当前路径的探测。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,349评论 0 33
  • 我想 陪孩子学会游泳 我想 每年寒暑假都带孩子出去旅游 我想 每天陪孩子吃晚饭 我想 让孩子学会一门艺术 我想 每...
    小小小小小小小小黑妞阅读 2,144评论 0 0
  • 我是个内向的人,努力遇到一些人,经历一些事,学到一些经验和为人处事的方法,让我不再面对别人时不敢看他们的眼睛,不会...
    杨洱阅读 3,408评论 0 3
  • 爸妈把我生得如此讲究,我又如何能将就?人就是要做自己人生的主角,不要在别人的人生里充当无足轻重的配角。这道理我懂,...
    special溦阅读 3,701评论 0 0
  • 我不曾哼过一支乡愁 路边的秋叶不曾青黄 逃离嘈杂的广场 寻觅僻静 在僻静里辗转反侧 我是一只飞出了空气的百灵鸟 我...
    Gavin_keen阅读 1,475评论 0 5