Compiler-Implemented Differential Checksums: Effective Detection and Correction of Transient and Permanent Memory Errors

Research output: Contribution to book/conference proceedings/anthology/reportConference contributionContributedpeer-review

Contributors

  • Christoph Borchert - , University Osnabruck (Author)
  • Horst Schirmeier - , Chair of Operating Systems (Author)
  • Olaf Spinczyk - , University Osnabruck (Author)

Abstract

The detection of memory errors is common practice in safety-critical software, for example in the automotive and avionics industry. International safety standards recommend using checksums for protecting critical data in computer memories. Typical implementations verify the checksum before data access and recompute it after modification using the same algorithm. However, we show that this approach can sometimes dramatically worsen the reliability of computer systems with regard to transient memory faults, and also permanent faults remain undetected. A solution with significant conceptual advantages is constituted by differential checksum algorithms, which update the respective checksum without full recomputation on data modification. We present a compiler-based solution that inserts differential checksums into C/C++ data structures automatically to cope with their increased complexity. An extensive fault-injection campaign with the TACLeBench benchmark collection shows that differential checksums reduce silent data corruptions by 95% on average whereas non-differential checksums turn out to be mostly ineffective because they introduce a window of vulnerability.

Details

Original languageEnglish
Title of host publication2023 53rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN)
PublisherIEEE
Pages81-94
Number of pages14
ISBN (electronic)9798350347937
ISBN (print)979-8-3503-4794-4
Publication statusPublished - 30 Jun 2023
Peer-reviewedYes

Conference

Title2023 53rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks
Abbreviated titleDSN 2023
Conference number53
Duration27 - 30 June 2023
Website
LocationPalácio da Bolsa
CityPorto
CountryPortugal

External IDs

Scopus 85169026509
ORCID /0000-0002-1427-9343/work/166764856

Keywords

Keywords

  • Complexity theory, Data structures, Program processors, Safety, Software, Software algorithms, Software reliability