Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Ассемблерной вставкой - прямым переходом в шедулер, который в прерывании от таймера.
Отправлено
SM
08 октября 2007 г. 19:10
В ответ на:
раз ляшко не хоет отвечать (или не может ответить по причине незнания) адресую этот вопрос всемОтвет: И ещё вопрос: если в ISR обнаружено событие, требуещее переключение на задачу с более высоким приоритетом, чем текущая, то как это сделать на СИ? (раз уж вы решили рассматривать эту проблему в разрезе СИ) Причем если переключиться нужно НЕМЕДЛЕННО...А?
отправлено <font color=gray>иниипет</font> 08 октября 2007 г. 19:07
Составить ответ
|
Вернуться на конференцию
Ответы
Заморочил вам голову дохтур. Немедленно переключиться - я такой надобности не встречал ни разу. Быстрые процессы в прерываниях обрабатываются, правильно Алексей сказал. А нужда в срочном переключении контекста - это фантазии доктора.
—
Михаил Е.
(08.10.2007 20:55:32
81.13.25.114
,
пустое
)
Ответ: А без хамства и оскорблений никак нельзя своё мнение выразить? Тем более вопрос был не в том, нужно или не нужно мнгновенно переключаться, вопрос был как это сделать БЫСТРО на СИ ...Т.е. как быстрей скакануть из ISR сразу в нужный поток не заходя в промежуточные потоки (диспетчера-планировщика и т.п.)
—
иниипет
(08.10.2007 21:01:42
217.118.66.7
,
пустое
)
Ответ: в QNX, кстати (так, для справки) такая возможность есть
—
иниипет
(08.10.2007 21:03:31
217.118.66.7
,
пустое
)
Ответ: а без асм-вставок нельзя?
—
иниипет
(08.10.2007 19:20:56
217.118.66.33
,
пустое
)
Переключение контекста это процессорно-зависимая операция, связанная с особенностями его архитектуры. Такие вещи на ЯВУ не делаются.
—
SM
(08.10.2007 19:22:3
80.92.255.53
,
пустое
)
Ответ: Вот-то-то и оно (:-((((
—
иниипет
(08.10.2007 19:42:20
217.118.66.33
,
пустое
)
Ну, ассемблерная вставка (или отдельный asm-файл) нужна только в переключателе контекстов, т.е. из прерывания ли, не из прерывания - вызывается какой-нибудь сервис ОС типа взведения события, оттуда - перепланировщик, и уже потом дойдёт дело до асм-вставки переключателя контекстов. Но
НЕМЕДЛЕННО
не получится даже если вручную в HEX-файл байтики вписывать.
—
ReAl
(08.10.2007 20:10:2
89.162.152.53
,
пустое
)
Получится, еще как получится. Если сразу из прерывания джампануть в переключатель контекста, не дожидаясь очередного прерывания планировщика. Будет немедленно.
—
SM
(08.10.2007 20:16:46
80.92.255.53
,
пустое
)
НЕМЕДЛЕННО, прямо аж большими буквами - не получится, сколько-то там тактов уйдёт всегда :-) А зачем ждать прерывание планировщика? (+)
—
ReAl
(08.10.2007 20:37:54
89.162.152.53
, 438 байт)
Ответ: А если нужно ещё быстрей(минуя "перепланировщик")? Т.е. допустим в прерывании имеем Event для запуска потока с наивысшим приоритетом
—
иниипет
(08.10.2007 20:52:22
217.118.66.7
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
увеличьте 3 в два раза:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru