Перейти к содержанию
    

выбор дистрибутива реального времени

всем привет!

слышал, что от ядра версии 3.2 можно добиться режима мягкого реального времени. для моей задачи это 1 мс.

в поисковике огромное кол-во информации, что запутался.

кто разбирается напишите пожалуйста по пунктам шаги которые нужно предпринять:

как я понял в основе лежит ядро, если добавляется обвес в виде GUI и прочее, то это уже дистрибутив.

 

значит вопросы и варианты:

1) порекомендуйте дистрибутив на базе ядра 3.2 (или какая там версия) , без декстопа, желательно для встроенного применения (на флэшке); процессор X86, порт RS485

2) +руководство по инсталляции и подключения режима реального времени; соответствующие ссылки

3) рассматривал вариант Debian, но как там открутить все не нужное и сделать голое ядро плюс по собственному усмотрению ? можно и этот вариант если кто подскажет

4) взять голое ядро и сделать собственный дистрибутив; тогда ссылки на подробное руководство

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По аоводу реалтайма и задержек читаем тут:

http://www.at91.com/linux4sam/bin/view/Linux4SAM/RealTime

 

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

 

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

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

 

вы бы задавали конкретные вопросы, тогда вероятность получить конркетные ответы повышается)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

так, спасибо, начал читать. конкретные вопросы будут по мере поступления проблем - не уходите так-что ! :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

всем привет!

слышал, что от ядра версии 3.2 можно добиться режима мягкого реального времени. для моей задачи это 1 мс.

в поисковике огромное кол-во информации, что запутался.

кто разбирается напишите пожалуйста по пунктам шаги которые нужно предпринять:

как я понял в основе лежит ядро, если добавляется обвес в виде GUI и прочее, то это уже дистрибутив.

 

значит вопросы и варианты:

1) порекомендуйте дистрибутив на базе ядра 3.2 (или какая там версия) , без декстопа, желательно для встроенного применения (на флэшке); процессор X86, порт RS485

2) +руководство по инсталляции и подключения режима реального времени; соответствующие ссылки

3) рассматривал вариант Debian, но как там открутить все не нужное и сделать голое ядро плюс по собственному усмотрению ? можно и этот вариант если кто подскажет

4) взять голое ядро и сделать собственный дистрибутив; тогда ссылки на подробное руководство

 

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

Я использовал самый быструю сборку "Линукса" в мире - это "Дженту". Ставишь только те программы, которые нужны тебе, а не взбрело кому-то в голову включить в установочный образ. Ядро "Линукса" и нужные тебе программы, которые ты будешь собирать из исходных текстов с ключами компилятора под твоё "железо", обновляются ежемесячно. Документацию по установке и настройке можно взять здесь: http://www.gentoo.org.

Я ставил "Дженту" на одноплатный компьютер с процессором "АМД Джиод" на 500 МГц с компакт-флэшкой вместо жёсткого диска. "Иксы" не ставил, только консоль. Впечатления самые приятные.

Какие задачи ты собираешься решать за 1 мс? В моём случае основную задержку в работу вносила не скорость вычислений микропроцессора, а скорость работы шин для связи с внешними устройствами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В ядре Линукса есть возможность сделать реалтайм. Обычно эта опция отключена. Или патч есть тля ядра. Насколько я помню было два пути, но я мало знаком с темой.

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

 

Там сделана shared memory структура, через которую управляют драйверами ядра. Куда и сколько шагать. Коды доступны

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

всем привет!

слышал, что от ядра версии 3.2 можно добиться режима мягкого реального времени. для моей задачи это 1 мс.

Я бы на твоём месте обрабатывал требовательные к времени отработки функции в обработчике интервального таймера, срабатывающем каждую миллисекунду, а всё остальное - как обычно. Здесь на форуме я приводил даже часть исходного кода как это делается. Всё работало как часы. Успехов!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я бы на твоём месте обрабатывал требовательные к времени отработки функции в обработчике интервального таймера, срабатывающем каждую миллисекунду, а всё остальное - как обычно. Здесь на форуме я приводил даже часть исходного кода как это делается. Всё работало как часы. Успехов!

 

Все верно. Одно замечание:

Надо быстро обрабатывать прерывание. Иначе система "замерзнет".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...