Skip to main navigation Skip to search Skip to main content

An efficient and backwards-compatible transformation to ensure memory safety of C programs

  • Stony Brook University

Research output: Contribution to conferencePaperpeer-review

116 Scopus citations

Abstract

Memory-related errors, such as buffer overflows and dangling pointers, remain one of the principal reasons for failures of C programs. As a result, a number of recent research efforts have focused on the problem of dynamic detection of memory errors in C programs. However, existing approaches suffer from one or more of the following problems: inability to detect all memory errors (e.g., Purify), requiring non-trivial modifications to existing C programs (e.g., Cyclone), changing the memory management model of C to use garbage collection (e.g., CCured), and excessive performance overheads. In this paper, we present a new approach that addresses these problems. Our approach operates via source code transformation and combines efficient data-structures with simple, localized optimizations to obtain good performance.

Original languageEnglish
Pages117-126
Number of pages10
DOIs
StatePublished - 2004
EventTwelfth ACM SIGSOFT International Symposium on the Foundations of Software Engineering, SIGSOFT 2004/FSE-12 - Newport Beach, CA, United States
Duration: Oct 31 2004Nov 5 2004

Conference

ConferenceTwelfth ACM SIGSOFT International Symposium on the Foundations of Software Engineering, SIGSOFT 2004/FSE-12
Country/TerritoryUnited States
CityNewport Beach, CA
Period10/31/0411/5/04

Keywords

  • C
  • Memory Safety
  • Program Transformation

Fingerprint

Dive into the research topics of 'An efficient and backwards-compatible transformation to ensure memory safety of C programs'. Together they form a unique fingerprint.

Cite this