@inproceedings{33948a00517d424385af70456d7128e8,
title = "Automatic bug detection in microcontroller software by static program analysis",
abstract = "Microcontroller software typically consists of a few hundred lines of code only, but it is rather different from standard application code. The software is highly hardware and platform specific, and bugs are often a consequence of neglecting subtle specifications of the microcontroller architecture. Currently, there are hardly any tools for analyzing such software automatically. In this paper, we outline specifics of microcontroller software that explain why those programs are different to standard C/C++ code. We develop a static program analysis for a specific microcontroller, in our case the ATmega16, to spot code deficiencies, and integrate it into our generic static analyzer Goanna. Finally, we illustrate the results by a case study of an automotive application. The case study highlights that – even without formal proof – the proposed static techniques can be valuable in pinpointing software bugs that are otherwise hard to find.",
keywords = "Model Check, Code Base, Direct Memory Access, Kripke Structure, Large State Space",
author = "Ansgar Fehnker and Ralf Huuck and Bastian Schlich and Michael Tapp",
year = "2009",
doi = "10.1007/978-3-540-95891-8_26",
language = "English",
isbn = "9783540958901",
series = "Lecture Notes in Computer Science",
publisher = "Springer, Springer Nature",
pages = "267--278",
editor = "Mogens Nielsen and Anton{\'i}n Kucera and Miltersen, {Peter Bro} and Catuscia Palamidessi and Petr Tuma and Valencia, {Frank D.}",
booktitle = "SOFSEM 2009: Theory and Practice of Computer Science",
address = "United States",
note = "35th Conference on Current Trends in Theory and Practice of Computer Science, SOFSEM 2009 ; Conference date: 24-01-2009 Through 30-01-2009",
}