LINUX.ORG.RU

Linux real time


0

0

расскажите пожалуйста поподробне про то как сделать из Линукс систему реального времени и как писать для нее приложение(нужна работа с АЦП ~10MGz) если что скидывайте на tbaizhumanov@gorodok.net pfhfytt cgfcb,j

anonymous

Есть расширения реального времени для Linux, о них можно прочитать в статье на www.citforum.ru статья называлась "Linux - реальное время" или что-то похожее. Можно и на стандартном ядре. 1. повысить приоритет запускаемого из под root процесса до безобразия, но не задудь сделать задержки между опросами - иначе система зависнит; 2. внутри процесса: threads :(( - увы, но переключение контекста между ними 10Мкс - меньше не получиться. В QNX - OS-real-time преключение между прцессами 10Мкс. Если требуется быстрее и аппаратура по другому не может работать то обычно решается аппаратно. 3. Оптимизация.

А если хочешь из Linux - именно сделать OS real-time. Нужно переписать ядро: планировшик задач, возможно подсистему работы с драйверами. :)

anonymous
()

Это что, шутка про 10 мегаГерц? Это что-же 100 наносекунд время реакции должно быть? Такое даже по ПДП может не прокатить. Или надо аппаратную буферизацию, или не персоналку, я что-то серьезное.

ansky ★★★★★
()

10 МГц - частота дискретизации. С такой частотой заполняется аппаратный буфер, который находится на плате АЦП и по мере заполнения может сбрасываться в озу компа, обычно через канал ДМА. Размеры буфера - единицы килобайт, так что реально обработка должна происходить с частотой менее 10 ГЦ. Если нужен только сбор данных, время реакции системы случае не очень (в разумных пределах) важно из-за наличия на всех приличных платах кратных буферов - пока заполненный буфер ждёт освобождения, данные помещаются в следующий. Необходимо лишь успевать забирать данные с нужной скоростью.

Я юзаю http://www.aero.polimi.it/~rtai/, оно хорошо сопрягается с comedi.

bugmaker ★★★★☆
()

>> с частотой менее 10 ГЦ

упс, очепятка. 10 кГц конечно.

bugmaker ★★★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.