реклама на сайте
подробности

 
 
> IAR 6.50 ARM, Как диагностировать переполнение стека?
TolikG
сообщение Jan 30 2014, 06:26
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 86
Регистрация: 19-03-10
Пользователь №: 56 071



В FreeRtos есть средства, хтя я ими не пользуюсь - как правило переполнение сразу приводит к частичному или полному краху - увеличиваю стек задачи и продолжаю тестировать. Сейчас отлаживаю прогу без RTOS - заметил что некоторые строчки кода не меняют локальные переменные. Посмотрел в окошке Locals поля Location - оказалось что переменные находятся в адресном пространстве флеш-памяти.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
scifi
сообщение Jan 30 2014, 07:19
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Один из очевидных способов - в стартапе заполнить пространство стека чем-нибудь узнаваемым (0xDEADBEAF или чем-то таким). Погонять программу, а потом через отладчик посмотреть, насколько оно затёрлось.
Ещё можно попробовать поставить Data Watchpoint на край стека. Но далеко не любая работа со стеком может быть отловлена таким способом.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 12:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.01351 секунд с 7
ELECTRONIX ©2004-2016