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

 
 
> Запрет прерываний на длительное время в uClinux, какие последствия?
Ivan_Kov
сообщение Jul 18 2007, 08:16
Сообщение #1


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

Группа: Свой
Сообщений: 174
Регистрация: 30-10-06
Из: г. Курск
Пользователь №: 21 787



Стоит задача управления устройством в реальном времени. Поскольку ОС uClinux - не реального времени, выход вижу только в том, что бы запрещать прерывания на время работы с устройством. Проблема в том, что время это довольно велико 100-300 мС.
Какие неприятности возникнут всвязи с этим, и как можно с ними бороться?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vshemm
сообщение Oct 20 2007, 14:10
Сообщение #2


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

Группа: Участник
Сообщений: 167
Регистрация: 15-08-07
Пользователь №: 29 803



Попробуйте использовать для своей задачи RT приоритет (от 1 до 99) и соответствующую политику шедулинга (RR или FIFO). Тогда Вашу нить никто не сможет вытеснить, кроме обработчиков прерываний и softirq - tasklets. Сами обработчики довольно "легковесные" и задержки, создаваемые ими, проблемы представлять не должны (тут, конечно, все зависит от железа и временных требований при работе с устройством). А вот тасклеты и softirq могут быть "тяжелыми", например, бОльшая часть работы сетевой подсистемы делается именно там. Поэтому их скорее всего придется запрещать на время работы с устройством. Или работать с устройством в своем тасклете smile.gif Так или иначе, этот вариант лучше, чем запрещение прерываний.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 10:13
Рейтинг@Mail.ru


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