paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Running symbolic execution forever

让符号执行永远运行下去
ISSTA Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis2020匹配度 3/10 · 论文属于符号执行与程序分析系统工作,与静态分析主题有基础关联,但未涉及 LLM/Agent、浮点程序分析、贝叶斯程序分析或 AI 与 PL 的交叉,因此与用户当前研究画像的核心方向距离较远。引用 20 inbox
Frank Busse, Martin Nowack, Cristian Cadar
crossref: 2026-09-12

AI 速览

一句话:提出将符号执行状态记录到磁盘并选择性恢复路径的技术,使符号执行能够无限期运行。

符号执行在分析真实应用时,常常在较短时间内耗尽所有可用内存,导致无法长时间分析。本文提出一种技术,可将正在进行的符号执行分析记录到磁盘,并在之后选择性地恢复感兴趣的路径,从而使符号执行能够无限期运行。为实现这一目标,作者解决了若干关键研究挑战:检测重执行时的分歧、高效存储长时间运行的状态、在重执行时改变搜索启发式,以及提供存储执行的全局视图。对93个Linux应用的广泛评估表明,该方法切实可行,使这些应用能够运行数天并持续探索新的执行路径。

问题
符号执行分析真实应用时内存消耗过快,难以长时间运行。
方法
将执行状态记录到磁盘并支持选择性恢复,解决重执行分歧检测、高效存储、搜索启发式变更和全局视图等挑战。
评估
在93个Linux应用上进行评估,证明方法可行,能运行数天并探索新路径。
原文摘要(Abstract)

When symbolic execution is used to analyse real-world applications, it often consumes all available memory in a relatively short amount of time, sometimes making it impossible to analyse an application for an extended period. In this paper, we present a technique that can record an ongoing symbolic execution analysis to disk and selectively restore paths of interest later, making it possible to run symbolic execution indefinitely. To be successful, our approach addresses several essential research challenges related to detecting divergences on re-execution, storing long-running executions efficiently, changing search heuristics during re-execution, and providing a global view of the stored execution. Our extensive evaluation of 93 Linux applications shows that our approach is practical, enabling these applications to run for days while continuing to explore new execution paths.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot6028,
  title = {Running symbolic execution forever},
  author = {Frank Busse and Martin Nowack and Cristian Cadar},
  booktitle = {ISSTA},
  year = {2020},
  doi = {10.1145/3395363.3397360}
}