Руководящие принципы MISRA C

Ассоциация надежности программного обеспечения для моторной промышленности (MISRA®[1] ) разработал руководство по использованию языка C в критических системах (MISRA C®).

Для получения информации о MISRA C смотрите www.misra.org.uk.

В 1998 году MIRA Ltd. опубликовала MISRA C (MISRA C:1998), чтобы обеспечить ограниченное подмножество стандартизированного, структурированного языка, который соответствовал уровню целостности безопасности (SIL) 2 и выше. В 2004 году была опубликована крупная обновленная информация, основанная на отзывах (MISRA C: 2004), а в 2007 году - незначительная обновленная информация, известная как техническое исправление (TC1 ).

В 2007 MIRA Ltd. издала стандарт MISRA AC AGC, «MISRA AC AGC: Рекомендации для Применения MISRA-C:2004 в Контексте Автоматической Генерации кода». MISRA AC AGC не изменяет правила C:2004 MISRA, а изменяет рекомендацию приверженности.

В 2013 году MIRA Ltd. опубликовала C:2012 стандарт MISRA «Руководство по использованию языка C в критических системах». MISRA C:2012 обеспечивает улучшения, основанные на обратной связи пользователя и включает руководство по автоматической генерации кода.

Embedded Coder® и Simulink® предложить возможности для минимизации потенциала нарушений правил MISRA C. Возможности включают в себя:

  • Code Generation Advisor, который помогает вам сконфигурировать модель или подсистему так, чтобы генератор кода с наибольшей вероятностью произвел C:2012 совместимый с MISRA код. Для получения дополнительной информации смотрите Настройте модель для целей генерации кода при помощи Code Generation Advisor.

  • Проверки Model Advisor, которые можно использовать, когда вы разработали модель или подсистему, чтобы увеличить вероятность генерации кода, совместимого C:2012 MISRA. Чтобы выполнить MISRA C:2012 податливость проверяет вашу модель или подсистему:

    1. Откройте Model Advisor.

    2. Перейдите к разделу By Task > Modeling Guidelines for MISRA C:2012.

    3. Выполните проверки в папке.

    Для получения дополнительной информации об использовании Model Advisor, смотрите Проверить модель Используя Model Advisor.

При использовании руководящих принципов C:2012 кодирования MISRA для оценки качества вашего сгенерированного кода C, вы требуете в соответствии с разделом 5.3 C:2012 руководства MISRA для использования языка C в критических системах документа, чтобы подготовить оператора о податливости для оцениваемого проекта. Чтобы помочь вам в разработке этого оператора о податливости, MathWorks® оценивает инструкции по C:2012 MISRA по сравнению с кодом С, сгенерированным с помощью Embedded Coder. Результаты оценки публикуются как:

  • Сводные таблицы соответствия, которые идентифицируют метод, используемый для получения податливости для каждого правила и директивы.

  • Отклонения, которые идентифицируют правила или директивы, которые не соответствуют.

Для получения дополнительной информации смотрите Разработку оператора о податливости C:2012 MISRA.


[1] MISRA и MISRA C являются зарегистрированными товарными знаками MIRA Ltd., принадлежащими консорциуму MISRA.