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

 
 
> Пример http сервера на FreeRTOS, lwIP_Demo_Rowley_ARM7
xelax
сообщение Nov 14 2007, 08:04
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 370
Регистрация: 7-11-06
Пользователь №: 22 035



контроллер sam7x

Пример компилируется, собирается и работает.
Решил поробовать на его основе сделать что-то своё в итоге программа стала падать (abort and undef).
Сначала решил, что в порыве оптимизации что-то сделал не так кривыми руками. Потратив уйму времени на поиск ошибки обнаружил, что указатели на функции передающиеся в процедуру
Код
struct netif *
netif_add(struct netif *netif, struct ip_addr *ipaddr, struct ip_addr *netmask,
  struct ip_addr *gw,
  void *state,
  err_t (* init)(struct netif *netif),
  err_t (* input)(struct pbuf *p, struct netif *netif))

смещаются на 1 и указывают на нечётные адреса.
вот copy past дебаггера
Код
netif      0x00206704  
ipaddr  0x0020176c    
netmask            0x00201768  
gw        0x00201764  
state     0x00000000  
init        0x110129 <ethernetif_init+1>  
input     0x10be41 <tcpip_input+1>    
netifnum            1


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

Кто-нибудь запускал этот пример у себя? Эта бага только у меня воспроизводится или это действительно ошибка в проекте?

З.Ы. компилер gcc 4.1.1
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Evgeny_CD
сообщение Nov 14 2007, 08:10
Сообщение #2


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Не могу ничего сказать про данный случай, но помню, было обсуждение, что FreeRTOS умудряется даже для malloc выдавать блоки, не выровненные по границе слова. Видимо, это такая багофича создателей этой ну очень free ОСи.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 8th August 2025 - 22:15
Рейтинг@Mail.ru


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