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

 
 
> at91sam7 реализация многозадачности
srm
сообщение Feb 1 2010, 20:52
Сообщение #1


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

Группа: Участник
Сообщений: 144
Регистрация: 27-12-09
Из: Пермь
Пользователь №: 54 501



нужно реализовать многозадачность с использованием приоритетов. если что-то неправильно - поправьте. насколько я понимаю, нужно использовать Periodic Interval Timer. менеджер потоков хранит в субу есть список потоков. для каждого потока хранится информация: контекст (значения регистров, среди которых указатель стека, флаговый регистр, указатель текущей команды и пр.), преоритет. при срабатывании прерывания от Periodic Interval Timer менеджер сохраняет контекст прерванного потока, берёт следующший поток в списке, устанавливает для него Periodic Interval Value, восстанавливает контекст, передаёт управление (безусловным переходом?). затем снова ловит прерывание и т.д.
не совсем понятно как сохранять/восстанавливать контекст - тут скорее всего придётся вставлять ассемблерный код. и не понятно как завершать обработку прерывания...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Aurochs
сообщение Feb 1 2010, 22:17
Сообщение #2


Ортодокс
***

Группа: Свой
Сообщений: 219
Регистрация: 26-10-07
Из: Смела, Украина
Пользователь №: 31 775



+1.
IMHO cамый эффективный способ изучения - по уже готовой реализации.
Go to the top of the page
 
+Quote Post



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

 


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


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