Детектор ошибок памяти для встроенных систем?

#memory-management #memory-leaks #embedded #stack-overflow

#управление памятью #утечки памяти #встроенный #переполнение стека

Вопрос:

Какие инструменты наиболее полезны для поиска ошибок управления памятью во встроенных системах? Способен ли valgrind на это? Какие входные данные им нужны? Исходный код? Объектный код?

Есть ли разница, использую ли я встроенную ОС или автономное встроенное приложение?

Ответ №1:

Две вещи, которые мы делаем, чтобы обнаружить проблему с памятью:

1 / Превентивная мера: используйте Grammatech CodeSonar. Как статический анализатор, он может обнаружить проблему с памятью.

2/ Встроенный элемент управления для мониторинга использования стека и кучи.

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

Ответ №2:

Я предлагаю вам ознакомиться с пакетом MEM от Уолтера Брайта.

Описание: http://www8.cs.umu.se /~isak/snippets/mem.txt

Код можно найти по адресу:http://www8.cs.umu.se /~isak/сниппеты/