2016-03-03 3 views
1

Я хотел бы писать в режиме реального времени программы Linux при использовании PREEMPT_RT в реальном времени. Я нашел официальную Wiki (https://rt.wiki.kernel.org/index.php/HOWTO:_Build_an_RT-application). Есть примеры кода, но я хотел бы получить объяснение возможных RT-функций.Построение RT-приложения с использованием PREEMPT_RT

Спасибо,

ответ

2

Важно подчеркнуть, что PREEMPT_RT патч, который изменяет внутреннего кода ядра Linux, чтобы уменьшить максимальное время ожидания испытываемого процессом пользовательского уровня. Это делается путем изменения, например, прядильные блоки к превентивным мьютексам в реальном времени, используя поточные прерывания (т. е. обработчики аппаратных прерываний запускаются в отдельных потоках ядра) и так далее. Поэтому не предоставляет API для пользовательского программирования, и вы по-прежнему полагаетесь на стандартные примитивы libc и system call. Просто установите, настройте и переустановите ядро ​​(или, альтернативно, установите предварительно построенное ядро ​​PREEMPT_RT).

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

Если вы ищете конкретные API в реальном времени, вы можете посмотреть на Xenomai 3.0.1, который предоставляет конкретный API для запуска процесса на уровне пользователя поверх стандартного Linux или гипервизора Xenomai (слой ниже ядро Linux)

 Смежные вопросы

  • Нет связанных вопросов^_^