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

 
 
> Отладка и выход за пределы массивов, Как отловить выход за предел массива.
Neo_Matrix
сообщение Apr 6 2018, 20:27
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 11-04-06
Пользователь №: 16 029



Подскажите, есть ли способ под FreeRTOS понять есть ли выходы за предел массива. Хуки на недостаток хипа и стека работают нормально и очень помогают, когда нужно зажать стек задачи до минимума. Но как отладить выход за пределы массивов? Такая необходимость появилась, так как иногда устройства перезагружаются сами по себе(в обработчиках исключений стоит функция сброса, так как устройства должны максимально быть доступны). Есть подозрение на выход за пределы. Так как проект достаточно крупный около 300кб кода с оптимизацией, пересмотреть, а главное заметить ошибку очень сложно.
Кто, что может порекомендовать?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Neo_Matrix
сообщение Apr 10 2018, 12:11
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 11-04-06
Пользователь №: 16 029



Всем спасибо. Ошибка найдена. Функции strncmp при определенных стечениях обстоятельств передавался NULL вместо валидного указателя.
Go to the top of the page
 
+Quote Post
megajohn
сообщение Apr 10 2018, 12:44
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 080
Регистрация: 16-11-04
Из: СПб
Пользователь №: 1 143



Цитата(Neo_Matrix @ Apr 10 2018, 15:11) *
Всем спасибо. Ошибка найдена. Функции strncmp при определенных стечениях обстоятельств передавался NULL вместо валидного указателя.


на будущее: если юзаете IAR, то там там появилось C-RUN Runtime Checking
( сам не юзал )


--------------------
Марс - единственная планета, полностью населенная роботами (около 7 штук).
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Neo_Matrix   Отладка и выход за пределы массивов   Apr 6 2018, 20:27
- - jcxz   Цитата(Neo_Matrix @ Apr 6 2018, 23:27) По...   Apr 6 2018, 21:57
- - kolobok0   Цитата(Neo_Matrix @ Apr 6 2018, 23:27) .....   Apr 7 2018, 00:19
|- - jcxz   Цитата(kolobok0 @ Apr 7 2018, 03:19) Набе...   Apr 7 2018, 19:08
- - novikovfb   Для начала стоит перенести код в настольный ПК и п...   Apr 7 2018, 04:11
- - k155la3   1. Проработайте код аналитически, тк выход за гран...   Apr 7 2018, 09:14
- - k155la3   Цитата(jcxz @ Apr 7 2018, 22:08) . . . (...   Apr 7 2018, 19:49
|- - jcxz   Цитата(k155la3 @ Apr 7 2018, 22:49) 2. Эт...   Apr 7 2018, 20:23
|- - k155la3   Цитата(jcxz @ Apr 7 2018, 23:23) И что? ...   Apr 8 2018, 13:40
|- - Kabdim   Цитата(jcxz @ Apr 7 2018, 23:23) И что? ...   Apr 8 2018, 14:03
- - Neo_Matrix   Спасибо всем за ответы. Их действительно много и о...   Apr 7 2018, 22:57
|- - kolobok0   Цитата(Neo_Matrix @ Apr 8 2018, 01:57) Сп...   Apr 8 2018, 09:30
- - HardEgor   Цитата(Neo_Matrix @ Apr 7 2018, 03:27) Та...   Apr 8 2018, 04:15
|- - jcxz   Цитата(Neo_Matrix @ Apr 10 2018, 15:11) В...   Apr 10 2018, 12:26
||- - haker_fox   QUOTE (jcxz @ Apr 10 2018, 20:26) Вообще ...   Apr 10 2018, 14:51
||- - jcxz   Цитата(haker_fox @ Apr 10 2018, 17:51) А ...   Apr 11 2018, 06:24
||- - haker_fox   QUOTE (jcxz @ Apr 11 2018, 14:24) А чтени...   Apr 12 2018, 15:17
- - Neo_Matrix   Использую Keil. В комплекте с FREERTOS есть демка,...   Apr 10 2018, 14:52


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 09:54
Рейтинг@Mail.ru


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