Even the most well thought-out design is vulnerable to bugs when the implementation falls short of the design. This paper focuses on how one can use a set of coding guidelines, called MISRA C, to help root out bugs introduced during the coding stage. MISRA C is a subset of the C language. In particular, it is based on the ISO/IEC 9899:1990 C standard, which is identical to the ANSI X3.159-1989 standard, often calledC '89. Thus every MISRA C program is a valid C program. The MISRA C subset is defined by 141 rules that constrain the C language. We will use the terms 'MISRA' or 'MISRA C' loosely in the remainder of the document to refer to either the base document (Guidelines For the Use of the C Language In Critical Systems) or the language subset. The author will start by reviewing MISRA C: what is consists of, the types of rules, and some examples of the rules themselves. After that, the author will explore about ways that MISRA C can be used to improve the reliability of your system, even if you are not designing software for automobiles. MISRA C was originally published in 1998 under the name Guidelines For the Use of the C Language In Vehicle-Based Software. The original standard consisted of only 127 rules. In the time since the original publication, there have been some questions and concerns about some of the rules which motivated the second edition of the standard (MISRA 2004). MISRA 2004 contains a number of clarifications and improvements to the original rules. Also, a few troublesome rules have been removed altogether. This paper discusses the 2004 version of the MISRA C language.
Designing reliable code using MISRA C
Entwurf einer zuverlässigen Codierung mit MISRA C
2005
13 Seiten, 2 Tabellen
Conference paper
Storage medium
English
Automotive software engineering using MISRA guidelines
Automotive engineering | 2000
|Automotive Software Engineering Using the MISRA Guidelines
British Library Conference Proceedings | 2000
|SAE Technical Papers | 2008
|Automotive engineering | 2008
|MISRA Activities for Safety-Related Software Development
SAE Technical Papers | 2008
|