Skip to main navigation Skip to search Skip to main content

Runtime detection of temporal memory errors

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

State-of-the-art memory debuggers have become efficient in detecting spatial memory errors – dereference of pointers to unallocated memory. These tools, however, cannot always detect errors arising from the use of stale pointers to valid memory (temporal memory errors). This paper presents an approach to reliable detection of temporal memory errors during a run of a program. This technique tracks allocated memory tagging allocated objects and pointers with tokens that allow to reason about their temporal properties. The technique further checks pointer dereferences and detects temporal (and spatial) memory errors before they occur. The present approach has been implemented in E-ACSL – a runtime verification tool for C programs. Experimentation with E-ACSL using TempLIST benchmark comprising small C programs seeded with temporal errors shows that the suggested technique detects temporal memory errors missed by state-of-the-art memory debuggers. Further experiments with computationally intensive runs of programs from SPEC CPU indicate that the overheads of the proposed approach are within acceptable range to be used during testing or debugging.

Original languageEnglish
Title of host publicationRuntime Verification - 17th International Conference, RV 2017, Proceedings
EditorsShuvendu Lahiri, Giles Reger
PublisherSpringer Verlag
Pages294-311
Number of pages18
ISBN (Print)9783319675305
DOIs
Publication statusPublished - 1 Jan 2017
Externally publishedYes
Event17th International Conference on Runtime Verification, RV 2017 - Seattle, United States
Duration: 13 Sept 201716 Sept 2017

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10548 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference17th International Conference on Runtime Verification, RV 2017
Country/TerritoryUnited States
CitySeattle
Period13/09/1716/09/17

Keywords

  • Frama-C/E-ACSL
  • Memory safety
  • Runtime analysis
  • Shadow memory
  • Temporal memory error

Fingerprint

Dive into the research topics of 'Runtime detection of temporal memory errors'. Together they form a unique fingerprint.

Cite this