Shape analysis of low-level c with overlapping structures

  • Authors:
  • Jörg Kreiker;Helmut Seidl;Vesal Vojdani

  • Affiliations:
  • Fakultät für Informatik, Technische Universität München, Garching b. München, Germany;Fakultät für Informatik, Technische Universität München, Garching b. München, Germany;Fakultät für Informatik, Technische Universität München, Garching b. München, Germany

  • Venue:
  • VMCAI'10 Proceedings of the 11th international conference on Verification, Model Checking, and Abstract Interpretation
  • Year:
  • 2010

Quantified Score

Hi-index 0.02

Visualization

Abstract

Device drivers often keep data in multiple data structures simultaneously while embedding list or tree related records into the records containing the actual data; this results in overlapping structures. Shape analyses have traditionally relied on a graph-based representation of memory where a node corresponds to a whole record and edges to pointers. As this is ill-suited for encoding overlapping structures, we propose and formally relate two refined memory models. We demonstrate the appropriateness of these models by implementing shape analyses based on them within the TVLA framework. The implementation is exemplified using code extracted from cache managing kernel modules.