ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
17 июня
1591764 Топик полностью
mse homjak (Вчера, 22:48, просмотров: 8) ответил Nikolay_Po на Если задача должна быть вытеснена (а FreeRTOS - вытесняющая ОС), это можно сделать, лишь прервав задачу прерыванием. Внутри прерывания, вместо восстановления контекста прерывания "как было до прерывания", восстанавливается контекст более приоритетной задачи. И вот это нетиповое использование прерывания, с возвратом не в прежний контекст прерывания, а в новый, и, по моему мнению, не совместимо с аппаратным восстановлением контекста.
Ну, меняем вершину стека на адрес процэдуры сохранения и переключения контента и делаем мрет. И запоминаем состояние текущей задачи, типа пушолл и заменив на следующую, пополл. В вершину стека адрес места останова восстанавливаемой задачи и рет. Тока тут проблема: смысла в теневом сохранении контента маловато.Тут стока тасований регистров и памяти, что лишние сохранения-восстановления особо погоды не сделают.