Generalized Dynamic Probes for the Linux Kernel and Applications with Arachne
Résumé
Finding the root cause of bugs and performance problems in large applications is a difficult task. The main reason of this difficulty is that the comprehension of such applications crosscuts the boundaries of a single process, indeed the concurrent nature of large applications requires insight of multiple threads and process and even sometimes of the kernel. In the meantime, most existing tools lacks support for simultaneous kernel and applications analysis. In this paper, we present Arachne, a tool for runtime analysis of complex applications. While efficiency considerations have played an important role in the design of Arachne, it allows safe and runtime injection of probes inside the Linux kernel and user space applications on both function calls and variable access. It features an Aspect- Oriented language that allows to access context of execution and to compose primitive probes (for example sequence of function calls). We show how Arachne allows to easily analyze problems such as race conditions which involves complex interactions between multiple process. And finally, we show Arachne is fast enough to analyze high performance applications such as the Squid web cache.
Domaines
Génie logiciel [cs.SE]Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...