|
Использование семафоров до старта планировщика |
|
|
|
 |
Ответов
|
Mar 17 2016, 09:22
|
Частый гость
 
Группа: Участник
Сообщений: 132
Регистрация: 6-02-16
Из: г. Баку
Пользователь №: 90 364

|
Цитата(turnon @ Mar 17 2016, 12:33)  ... Конечно смысла в семафорах до старта задач нет, до старта задач поток один. Но это унифицированный код, он используется и из задач, и до старта планировщика. Все работало нормально, но вчера вылез HardFault, трассировка привела к этому участку в queue.c:
if( xTaskResumeAll() == pdFALSE ) { portYIELD_WITHIN_API(); }
При вызове portYIELD_WITHIN_API() вылетает в HardFault. А это Ваш код? В смысле Вы так придумали или это код совместной работы в команде? А зачем так извращаться вообще? Мне, можно сказать новичку, итак ясно, что при вызове portYIELD_WITHIN_API() работа перейдет к планировщику. А как оно у Вас до сих пор работало интересно?  Конечно в мире разные бывают любители и пр. Но вот зачем иногда не совсем понятно.
Сообщение отредактировал AleksBak - Mar 17 2016, 09:29
|
|
|
|
|
Mar 17 2016, 09:55
|
Местный
  
Группа: Свой
Сообщений: 340
Регистрация: 17-10-14
Пользователь №: 83 207

|
Цитата(AleksBak @ Mar 17 2016, 13:22)  А это Ваш код? Нет, это код из queue.c, привел его для понимания что вызывает HardFault
|
|
|
|
|
Mar 17 2016, 11:47
|
Частый гость
 
Группа: Участник
Сообщений: 132
Регистрация: 6-02-16
Из: г. Баку
Пользователь №: 90 364

|
Цитата(turnon @ Mar 17 2016, 13:55)  Нет, это код из queue.c, привел его для понимания что вызывает HardFault Да это понятно. Я неправильно выразился - имел ввиду, что код/проект/структуру программы Вы сами придумали или кто-то "заставляет"(совместная команда, код какой задачи закрытый и пр.) именно так поступить (использовать семафоры до старта). Уже тут esaulenka и написал к чему пришел и как получше тут будет.
|
|
|
|
Сообщений в этой теме
turnon Использование семафоров до старта планировщика Mar 17 2016, 08:33   turnon Цитата(AleksBak @ Mar 17 2016, 15:47) Да ... Mar 17 2016, 13:41    zltigo QUOTE (turnon @ Mar 17 2016, 15:41) потом... Mar 17 2016, 13:48     turnon Цитата(zltigo @ Mar 17 2016, 17:48) Некот... Mar 17 2016, 13:55      zltigo QUOTE (turnon @ Mar 17 2016, 15:55) А как... Mar 17 2016, 14:13       turnon Цитата(zltigo @ Mar 17 2016, 18:13) Как о... Mar 17 2016, 14:36        zltigo QUOTE (turnon @ Mar 17 2016, 16:36) Это с... Mar 17 2016, 14:50         turnon Цитата(zltigo @ Mar 17 2016, 18:50) Если ... Mar 17 2016, 16:33          zltigo QUOTE (turnon @ Mar 17 2016, 18:33) Не об... Mar 17 2016, 18:26           turnon Цитата(zltigo @ Mar 17 2016, 22:26) Ведь ... Mar 17 2016, 18:49            zltigo QUOTE (turnon @ Mar 17 2016, 20:49) Это э... Mar 17 2016, 19:02             turnon Цитата(zltigo @ Mar 17 2016, 23:02) Потом... Mar 17 2016, 20:35              zltigo QUOTE (turnon @ Mar 17 2016, 22:35) Мне к... Mar 17 2016, 21:05               turnon Цитата(zltigo @ Mar 18 2016, 01:05) Следу... Mar 17 2016, 21:43                zltigo QUOTE (turnon @ Mar 17 2016, 23:43) А где... Mar 17 2016, 22:02 esaulenka Да, очереди/семафоры/sleep() с остановленным шедул... Mar 17 2016, 11:17 zltigo QUOTE (esaulenka @ Mar 17 2016, 13:17) (д... Mar 17 2016, 12:20 SMaster Я вот жду релиза версии 9.0, в нем запилили возмож... Apr 8 2016, 11:23 zltigo QUOTE (SMaster @ Apr 8 2016, 14:23) Я вот... Apr 8 2016, 12:14
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|