Стандарт Misra для встроенного программного обеспечения

Для меня были выполнены следующие шаги:

  1. Откройте файл eclipse.ini
  2. Измените
    -Xms40m
    -Xmx512m
    
    на
    -Xms512m
    -Xmx1024m
    
  3. Перезапустите Eclipse

См. Здесь

11
задан Pascal Thivent 29 August 2010 в 08:31
поделиться

5 ответов

Я также настоятельно рекомендую Линт ПК. Если Вы, оказывается, компилируете свой код с Visual Studio, я рекомендую сменный 'Визуальный Линт' от Riverblade. Если Вы не можете скомпилировать код в Visual Studio, можно все еще выполнить Линт ПК из командной строки успешно.

Некоторые компиляторы встроенной системы обеспечивают испытание на соответствие MISRA как предупреждения компилятора. Я использую компилятор IAR для разработки Arm7/Arm9. Это обеспечивает легкое для конфигурирования контрольного списка соответствия MISRA прямо в установке компилятора.

Трудно придумать эмпирическое правило для оценки времени, это взяло бы Вас для создания некоторого правильно написанного кода MISRA совместимый. Много зависит от существующих привычек кодирования к программистам и как тесно они следуют правилам MISRA во-первых.

Грубые оценки:
2 - 3 дня для приобретания сноровку при использовании Линта ПК.
Начальная передача при создании существующего кода совместимый MISRA: 10 - 25 процентов времени, проведенного при написании кода во-первых.
Хранение кода совместимый MISRA: 5 - 10 процентов добавляются к разработке кода. Половина этой стоимости изменяет привычки к Вашим кодерам следовать за 'MISRA способ' выполнения вещей. Другая половина является дополнительными расходами тестирования кода и контроля для обеспечения соответствия MISRA.

12
ответ дан 3 December 2019 в 02:42
поделиться

Создание кода Misra, совместимый это не слишком много тяжелой работы - если Вы следуете за довольно хорошими практиками программирования. Вы могли бы найти некоторые правила указателя немного хитрыми, если код, который Вы пытаетесь сделать, соответствует, имеет некоторую странную и замечательную адресную арифметику с указателями.

Я был бы рекомендация второго Greg для Линта ПК, но Шплинт с открытым исходным кодом также стоит выглядеть на, хотя между ними (и система предупредительной сигнализации компилятора), я оцениваю, что Вы все еще только сможете покрыть 80% правил Misra - остальные должны будут, вероятно, быть кодом, рассмотренным вручную.

8
ответ дан 3 December 2019 в 02:42
поделиться

Я использую Линт ПК для статического анализа кода C++ и C. Это может быть настроено для показа, какие правила MISRA были нарушены, и это имеет интерфейс командной строки.

4
ответ дан 3 December 2019 в 02:42
поделиться

У нас была подобная проблема модифицирования правил Misra. Мы имели некоторые проблемы качества кода на крупном проекте и решили использовать MISRA для улучшения качества кода.

Мы используем компилятор Green Hills, который имеет поддержку MISRA C правила. Существуют также одинокие доступные средства проверки. В зависимости от то, что Вы хотите сделать это, может быть закончено уничтожения, включающего все правила. Мы переключили один правило о за один раз, чтобы дать людям время еще для фиксации ограниченного количества подобных проблем, Вы полностью поражены количеством ошибок.

Начиная с наших предупреждений был сгенерирован компилятором а не автономным инструментом, Вы видите ошибки, как Вы разрабатываете и не только когда Вы выполняете средство проверки. В то время как мы продолжали разрабатывать, мы получили наш совместимый код а не на одном большом взрыве. Это также предотвращает старые привычки портить новый код, вызывающий Вас к необходимости переделать код снова позже.

Несколько раз трудно получить старый код, совместимый, так как никто не знает точно, как код работает. Я надеюсь, что у Вас есть модульные тесты.

3
ответ дан 3 December 2019 в 02:42
поделиться

Я использовал коммерческий инструмент под названием QAC. Инструмент может осуществить MISRA

Это имеет интерфейс командной строки, таким образом, можно настроить его для выполнения от автоматизированной среды сборки. Правила, которые будут применены, настраиваются, но ожидают иметь кого-то проводящего некоторое время, устанавливая его u. Осуществление MISRA довольно просто и обработано достаточно хорошо. Мне сказали (и это - просто 3-я рука), что это - один из инструментов некоторые агентства (такие как FDA) использование для оценки кода. Как большинство инструментов статического анализа существует шум (ложные положительные стороны) для контакта с. В прошлый раз, когда я использовал его, это не имело хорошего средства отметить/остановить ложь, положительную от появления снова (не изменяя код, это жаловалось на).

Я подозреваю, что младший инженер займет до недели (4-5 дней) для получения его установка (предполагающий, что они полны решимости получить его работающий, как Вы хотите).

На ноте стороны другие коммерческие инструменты статического анализа, вероятно, имеют осуществление MISRA также. По сообщениям (на их торгового представителя), Klocwork делает.

3
ответ дан 3 December 2019 в 02:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: