Course synopsis
This 2-day course
is about the MISRA C standard. It is particularly relevant to the production
of modern embedded systems for consumer electronics and provides
a comprehensive introduction to the background behind this important
standard and how to comply with its requirements. It is suitable for
both inexperienced and experienced C programmers and forms a sound,
rigorous basis for development in MISRA-C environments.
The course is copiously illustrated with data from real systems. Workshops,
self-assessments and intriguing problems are included.
Day 1
-
A
measurement based introduction to the need for safer subsets and
what came before MISRA C.
-
Difficulties
in specification of rules for programming languages and the underlying
background.
-
An
overview of MISRA C
-
The
base standard, ISO C90
-
Required
v. advisory behaviour
-
Deviations:
how to deviate, when and why
-
Enforceable
and non-enforceable rules
Day 2
-
The
rules in detail with examples
-
The
required rules
-
The
advisory rules
-
Areas
of uncertainty
-
Apparent
v. actual meaning
-
Rule
cross-talk and how to deal with it
-
Implications
for safety and reliability
-
Static
v. dynamic verification
-
The
spectrum of static and dynamic behaviour
-
The
future for safer subsetting