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

Посмотрел презентацию RTOS: RTLinux. Возник вопрос - а зачем вообще нужен RTOS на Линуксе? Линукс и так имеет мультитрединг.

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


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

11 minutes ago, jenya7 said:

Посмотрел презентацию RTOS: RTLinux. Возник вопрос - а зачем вообще нужен RTOS на Линуксе? Линукс и так имеет мультитрединг.

Для ПЛК вестимо. 
К примеру вот этот ПЛК на котором я делаю умный дом - https://www.wago.com/global/plcs-–-controllers/controller-pfc200/p/750-8214 работает на линуксе с RT патчем. Делает жесткий риалтайм с тиком 5 мс.

И теперь пошел такой тренд что все переходят на линукс RT в последних ПЛК, потому что надо интегрироват IoT и линукс в этом случае самй простой путь. 

 

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


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

1 hour ago, AlexandrY said:

Для ПЛК вестимо. 
К примеру вот этот ПЛК на котором я делаю умный дом - https://www.wago.com/global/plcs-–-controllers/controller-pfc200/p/750-8214 работает на линуксе с RT патчем. Делает жесткий риалтайм с тиком 5 мс.

И теперь пошел такой тренд что все переходят на линукс RT в последних ПЛК, потому что надо интегрироват IoT и линукс в этом случае самй простой путь. 

 

а просто создать тред?

stat = pthread_create(&(tid[0]), NULL, &UartTask, NULL);

 

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


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

А вы точно понимаете, что такое RealTime? Это не про многозадачность. Это про детерменированность. Конкретно, про детерменированность временных интервалов, в которые та или иная задача будет завершена.

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


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

1 hour ago, one_eight_seven said:

А вы точно понимаете, что такое RealTime? Это не про многозадачность. Это про детерменированность. Конкретно, про детерменированность временных интервалов, в которые та или иная задача будет завершена.

так в линуксе насколько я понимаю есть нативный таск менеджмент. и можно привязаться к аппаратному таймеру.

 

интересно а как происходит свич контент между тасками после pthread_create? вытесняющая или кооперативная система?

 

Изменено пользователем jenya7

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


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

Так это уже другой вопрос. RTLinux появился достаточно давно. До версии 2.6 linux kernel не имел возможности работать в вытесняющем режиме. В версии 2.6 такая возможность появилась, хотя и была отключена по умолчанию.

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


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

39 minutes ago, AlexandrY said:

К примеру вот этот ПЛК на котором я делаю умный дом

А что с надёжностью? Линукс её обеспечивает? Ведь, даже и с патчем, эта система не предназначена для такого применения. ИМХО.

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


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

3 minutes ago, haker_fox said:

А что с надёжностью? Линукс её обеспечивает? Ведь, даже и с патчем, эта система не предназначена для такого применения. ИМХО.

А что такое "надёжность"?
В 2009 - да, линукс для этого не подходил, так уже 10 лет прошло.

Кроме того, как правило, ненадёжность исходит от пользовательского приложения, а не от инфраструктуры. Я видел людей, кто во free rtos почти всё делали в критических секциях.

Изменено пользователем one_eight_seven

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


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

7 minutes ago, one_eight_seven said:

А что такое "надёжность"?

Ну как-то странно смотрится в ПЛК система, спроектированная для десктопного и серверного приложений. И зачем там линукс? Задача ПКЛ - пройтись по циклу: опросить датчики, преобразовать полученную информацию, вывести её на "порты". Может быть я чего-то не понимаю? ПЛК изучал только в университите, видел где и как применяются. Но непонимание примениния там линукса остаётся.

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


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

5 minutes ago, haker_fox said:

Ну как-то странно смотрится в ПЛК система, спроектированная для десктопного и серверного приложений. И зачем там линукс? Задача ПКЛ - пройтись по циклу: опросить датчики, преобразовать полученную информацию, вывести её на "порты". Может быть я чего-то не понимаю? ПЛК изучал только в университите, видел где и как применяются. Но непонимание примениния там линукса остаётся.

А применение языка программирования, который создавался для написания прообраза этой ОС (да и этой ОС) - нормально?

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


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

35 минут назад, haker_fox сказал:

ПЛК изучал только в университите, видел где и как применяются. Но непонимание примениния там линукса остаётся. 

Да всё просто. Нужно было добавить в ПЛК сеть, потому что это модно и молодёжно. Варианта два: либо добавлять в ПЛК сетевой стек, либо добавлять функции ПЛК к микрокомпьютеру, у которого уже есть сетевой стек (типа малинки). Первый вариант сложный, ненадёжный (встраиваемые сетевые стеки всё же сильно отстают по функциональности от настоящих), и почти наверняка не влезет в существующие аппаратные платформы. Поэтому выбрали второй вариант.

В принципе, вариант хороший - сейчас линукс встраиваемый уже очень хорошо отработан, и надёжность на высоте. Вопросы могут быть только по времени отклика, но их (по идее) решает RT-ядро.

Ну и немаловажный факт - программистов под линукс найти всё же легче, чем программистов встраиваемых систем.

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


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

1 hour ago, AHTOXA said:

программистов под линукс найти всё же легче, чем программистов встраиваемых систем.

А потом начинаешь хвататься за голову от того, что они накодили...

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


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

1 hour ago, AHTOXA said:

Ну и немаловажный факт - программистов под линукс найти всё же легче, чем программистов встраиваемых систем.

Мне вот просто интересно: это действительно продуманный шаг? Я имею в виду применение подобной ОС в ПЛК? После истории с Боингом мне уже кажется много подозрительным и некачественным в угоду "безнесу".

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


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

Я думаю, здесь так же, как и везде: можно написать плохо, можно написать хорошо. И если написать хорошо, то линукс никак не помешает, а даже наоборот, поможет. Вон, всякие сетевые маршрутизаторы и прочие подобные изделия работают годами 24x7, и вытягивают очень большие нагрузки. На этом фоне ПЛК выглядит детской задачей:)

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


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

16 minutes ago, AHTOXA said:

можно написать плохо, можно написать хорошо.

Хорошо, если так.

Ибо

1 hour ago, AHTOXA said:

Ну и немаловажный факт - программистов под линукс найти всё же легче, чем программистов встраиваемых систем.

это меня очень сильно волнует) Интересно, более именитые фирмы, такие как Siemens и Fanuc вставляют в свои ПЛК линукс или нет? Кто-нибудь, уважаемые коллеги, владеет данным вопросом?

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


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

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

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

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

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

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

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

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

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

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