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

 
 
 
Reply to this topicStart new topic
> выбор дистрибутива реального времени, кто знает?
kolyan32
сообщение Aug 24 2012, 05:33
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 24-08-12
Пользователь №: 73 237



всем привет!
слышал, что от ядра версии 3.2 можно добиться режима мягкого реального времени. для моей задачи это 1 мс.
в поисковике огромное кол-во информации, что запутался.
кто разбирается напишите пожалуйста по пунктам шаги которые нужно предпринять:
как я понял в основе лежит ядро, если добавляется обвес в виде GUI и прочее, то это уже дистрибутив.

значит вопросы и варианты:
1) порекомендуйте дистрибутив на базе ядра 3.2 (или какая там версия) , без декстопа, желательно для встроенного применения (на флэшке); процессор X86, порт RS485
2) +руководство по инсталляции и подключения режима реального времени; соответствующие ссылки
3) рассматривал вариант Debian, но как там открутить все не нужное и сделать голое ядро плюс по собственному усмотрению ? можно и этот вариант если кто подскажет
4) взять голое ядро и сделать собственный дистрибутив; тогда ссылки на подробное руководство

p.s. пишу приложение на С++ с QT, в линуксе я вообще никогда не сидел и что там да как не знаю
Go to the top of the page
 
+Quote Post
Д.К.
сообщение Aug 24 2012, 07:07
Сообщение #2


Участник
*

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



По аоводу реалтайма и задержек читаем тут:
http://www.at91.com/linux4sam/bin/view/Linux4SAM/RealTime

По поводу дистрибутива, думаю buildroot будет вам в помощь.

Цитата(kolyan32 @ Aug 24 2012, 08:33) *
p.s. пишу приложение на С++ с QT, в линуксе я вообще никогда не сидел и что там да как не знаю

гугль друг человека....

вы бы задавали конкретные вопросы, тогда вероятность получить конркетные ответы повышается)
Go to the top of the page
 
+Quote Post
kolyan32
сообщение Aug 24 2012, 07:35
Сообщение #3





Группа: Новичок
Сообщений: 2
Регистрация: 24-08-12
Пользователь №: 73 237



так, спасибо, начал читать. конкретные вопросы будут по мере поступления проблем - не уходите так-что ! sm.gif
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение Aug 24 2012, 15:56
Сообщение #4


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

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



Цитата(kolyan32 @ Aug 24 2012, 08:33) *
всем привет!
слышал, что от ядра версии 3.2 можно добиться режима мягкого реального времени. для моей задачи это 1 мс.
в поисковике огромное кол-во информации, что запутался.
кто разбирается напишите пожалуйста по пунктам шаги которые нужно предпринять:
как я понял в основе лежит ядро, если добавляется обвес в виде GUI и прочее, то это уже дистрибутив.

значит вопросы и варианты:
1) порекомендуйте дистрибутив на базе ядра 3.2 (или какая там версия) , без декстопа, желательно для встроенного применения (на флэшке); процессор X86, порт RS485
2) +руководство по инсталляции и подключения режима реального времени; соответствующие ссылки
3) рассматривал вариант Debian, но как там открутить все не нужное и сделать голое ядро плюс по собственному усмотрению ? можно и этот вариант если кто подскажет
4) взять голое ядро и сделать собственный дистрибутив; тогда ссылки на подробное руководство

p.s. пишу приложение на С++ с QT, в линуксе я вообще никогда не сидел и что там да как не знаю

Я использовал самый быструю сборку "Линукса" в мире - это "Дженту". Ставишь только те программы, которые нужны тебе, а не взбрело кому-то в голову включить в установочный образ. Ядро "Линукса" и нужные тебе программы, которые ты будешь собирать из исходных текстов с ключами компилятора под твоё "железо", обновляются ежемесячно. Документацию по установке и настройке можно взять здесь: http://www.gentoo.org.
Я ставил "Дженту" на одноплатный компьютер с процессором "АМД Джиод" на 500 МГц с компакт-флэшкой вместо жёсткого диска. "Иксы" не ставил, только консоль. Впечатления самые приятные.
Какие задачи ты собираешься решать за 1 мс? В моём случае основную задержку в работу вносила не скорость вычислений микропроцессора, а скорость работы шин для связи с внешними устройствами.
Go to the top of the page
 
+Quote Post
temiru
сообщение May 4 2016, 07:43
Сообщение #5





Группа: Участник
Сообщений: 8
Регистрация: 4-05-16
Пользователь №: 91 582



slitaz можно попробовать
Go to the top of the page
 
+Quote Post
Tarbal
сообщение May 7 2016, 15:18
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



В ядре Линукса есть возможность сделать реалтайм. Обычно эта опция отключена. Или патч есть тля ядра. Насколько я помню было два пути, но я мало знаком с темой.
Пару лет назад я работал с LinuxCNC http://linuxcnc.org/. Там как раз использован такой реалтайм Линукс. Реально ядро управляет несколькими шаговыми двигателями, посылая раз в миллисекунду (на хорошем железе можно и чаще) сигналы драйверам. Точнее по умолчанию 1 килогерц, а это раз в пол миллисекунды.

Там сделана shared memory структура, через которую управляют драйверами ядра. Куда и сколько шагать. Коды доступны
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение Jun 6 2016, 11:43
Сообщение #7


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

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



Цитата(kolyan32 @ Aug 24 2012, 08:33) *
всем привет!
слышал, что от ядра версии 3.2 можно добиться режима мягкого реального времени. для моей задачи это 1 мс.

Я бы на твоём месте обрабатывал требовательные к времени отработки функции в обработчике интервального таймера, срабатывающем каждую миллисекунду, а всё остальное - как обычно. Здесь на форуме я приводил даже часть исходного кода как это делается. Всё работало как часы. Успехов!
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Jun 6 2016, 15:49
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



Цитата(Enthusiast @ Jun 6 2016, 15:43) *
Я бы на твоём месте обрабатывал требовательные к времени отработки функции в обработчике интервального таймера, срабатывающем каждую миллисекунду, а всё остальное - как обычно. Здесь на форуме я приводил даже часть исходного кода как это делается. Всё работало как часы. Успехов!


Все верно. Одно замечание:
Надо быстро обрабатывать прерывание. Иначе система "замерзнет".
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 28th June 2025 - 20:26
Рейтинг@Mail.ru


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