Sciweavers

PLDI
2010
ACM

Decoupled lifeguards: enabling path optimizations for dynamic correctness checking tools

13 years 9 months ago
Decoupled lifeguards: enabling path optimizations for dynamic correctness checking tools
Dynamic correctness checking tools (a.k.a. lifeguards) can detect a wide array of correctness issues, such as memory, security, and concurrency misbehavior, in unmodified executables at run time. However, lifeguards that are implemented using dynamic binary instrumentation (DBI) often slow down the monitored application by 10–50X, while proposals that replace DBI with hardware still see 3–8X slowdowns. The remaining overhead is the cost of performing the lifeguard analysis itself. In this paper, we explore compiler optimization techniques to reduce this overhead. The lifeguard software is typically structured as a set of eventdriven handlers, where the events are individual instructions in the monitored application’s dynamic instruction stream. We propose to decouple the lifeguard checking code from the application that it is monitoring so that the lifeguard analysis can be invoked at the granularity of hot paths in the monitored application. In this way, we are able to find m...
Olatunji Ruwase, Shimin Chen, Phillip B. Gibbons,
Added 10 Jul 2010
Updated 10 Jul 2010
Type Conference
Year 2010
Where PLDI
Authors Olatunji Ruwase, Shimin Chen, Phillip B. Gibbons, Todd C. Mowry
Comments (0)