作者: Olivier Crameri , Ricardo Bianchini , Willy Zwaenepoel
关键词: Operating system 、 Overhead (computing) 、 Debugging 、 Static analysis 、 Computer science 、 Symbolic execution 、 Security bug 、 Instrumentation (computer programming) 、 Distributed computing 、 Shotgun debugging 、 Branch trace
摘要: Although they are helpful in many cases, state-of-the-art bug reporting systems may impose excessive overhead on users, leak private information, or provide little help to the developer locating problem. In this paper, we explore a new approach that uses partial logging of branches record path leading bug. We use static and dynamic analysis (both isolation tandem) identify need be logged. When is encountered, system symbolic execution along branch trace reproduce problem find set inputs activate The log drastically reduces number paths would otherwise explored by engine. study tradeoff between instrumentation debugging time using an open-source Web server, diff utility, four coreutils programs. Our results show method combines strikes best compromise, as it limits both reproduction time. conclude our techniques represent important step improving making more practical for reproduction.