Casper: Automatic Tracking of Null Dereferences to Inception with Causality Traces - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue Journal of Systems and Software Année : 2016

Casper: Automatic Tracking of Null Dereferences to Inception with Causality Traces

Résumé

Fixing a software error requires understanding its root cause. In this paper, we introduce causality traces, crafted execution traces augmented with the information needed to reconstruct the causal chain from the root cause of a bug to an execution error. We propose an approach and a tool, called Casper, based on code transformation, which dynamically constructs causality traces for null dereference errors. The core idea of Casper is to replace null values with special objects, called “ghosts”, that track the propagation of the nulls from inception to their error-triggering dereference. Causality traces are extracted from these ghosts. We evaluate our contribution by providing and assessing the causality traces of 14 real null dereference bugs collected over six large, popular open-source projects.
Fichier principal
Vignette du fichier
casper-debugging-null-dereferences.pdf (543.77 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01354090 , version 1 (22-08-2016)

Identifiants

Citer

Benoit Cornu, Earl T. Barr, Lionel Seinturier, Martin Monperrus. Casper: Automatic Tracking of Null Dereferences to Inception with Causality Traces. Journal of Systems and Software, 2016, 122, pp.52-62. ⟨10.1016/j.jss.2016.08.062⟩. ⟨hal-01354090⟩
392 Consultations
784 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More