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

 
 
13 страниц V  « < 3 4 5 6 7 > »   
Closed TopicStart new topic
> Real-time и не-real-time - в одном флаконе или раздельно?
Kabdim
сообщение Nov 1 2017, 09:51
Сообщение #61


Знающий
****

Группа: Свой
Сообщений: 558
Регистрация: 26-11-14
Из: Зеленоград
Пользователь №: 83 842



Так насчет вашего первого контраргумента что C код не совпадает с верифицируемым, вы признаете что его придумали?
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 1 2017, 10:40
Сообщение #62


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Kabdim @ Nov 1 2017, 11:51) *
Так насчет вашего первого контраргумента что C код не совпадает с верифицируемым, вы признаете что его придумали?

Нет, конечно.
Если бы действительно читали документ на который ссылаетесь, то знали бы что они сделали код для x86 и его даже не думали проверять.
Да и для ARM они не указали платформу на которой прогоняли код. Это все симуляция.
По ходу это кажется я вам объясняю, как там все устроено. biggrin.gif
Go to the top of the page
 
+Quote Post
Kabdim
сообщение Nov 1 2017, 10:55
Сообщение #63


Знающий
****

Группа: Свой
Сообщений: 558
Регистрация: 26-11-14
Из: Зеленоград
Пользователь №: 83 842



Цитата(AlexandrY @ Nov 1 2017, 13:40) *
По ходу это кажется я вам объясняю, как там все устроено. biggrin.gif

Увольте, ваша фантазия конечно интересная biggrin.gif , но я уже прочитал ту статью и многое из ссылок.
Go to the top of the page
 
+Quote Post
syoma
сообщение Nov 1 2017, 10:59
Сообщение #64


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

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Народ все это интересно, но может стоит обсуждать в отдельной теме? Так как к моей теме я не вижу отношения.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 1 2017, 11:07
Сообщение #65


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(syoma @ Nov 1 2017, 12:59) *
Народ все это интересно, но может стоит обсуждать в отдельной теме? Так как к моей теме я не вижу отношения.

Вы в теме "операционные системы" решили обсудить проблему недостатка в вашем районе квалифицированных программистов, замалчивая о технических требованиях.
Сами виноваты, теперь обсуждение переходит в правильное русло - верификацию операционных систем.

Цитата(Kabdim @ Nov 1 2017, 12:55) *
Увольте, ваша фантазия конечно интересная biggrin.gif , но я уже прочитал ту статью и многое из ссылок.

Ага, теперь сами признайтесь, я прав?
Go to the top of the page
 
+Quote Post
Студент заборстр...
сообщение Nov 3 2017, 03:51
Сообщение #66


Местный
***

Группа: Участник
Сообщений: 317
Регистрация: 16-09-17
Пользователь №: 99 334



А какие проблемы-то? (я к вопросу темы)
Фоновый поток не реалтайм, а приоритетные потоки - реалтайм.
Тут нет никакой проблемы.
А проблема в том, чтобы при наличии вытесняющей многозадачности низкоприоритетным потокам тоже гарантировать пусть и бОльшее, чем высокоприоритетным потокам, но ГАРАНТИРОВАННОЕ время реакции.

Это проблема хоть и сложней, но вполне решаема.
Я в разработанной мной RTOS её решил
Go to the top of the page
 
+Quote Post
mantech
сообщение Nov 3 2017, 07:11
Сообщение #67


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Студент заборстроительного @ Nov 3 2017, 06:51) *
А проблема в том, чтобы при наличии вытесняющей многозадачности низкоприоритетным потокам тоже гарантировать пусть и бОльшее, чем высокоприоритетным потокам, но ГАРАНТИРОВАННОЕ время реакции.


Кто мешает делать критичные ко времени задачи на прерываниях? Никогда проблем с этим не было...
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 3 2017, 08:19
Сообщение #68


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Студент заборстроительного @ Nov 3 2017, 05:51) *
А какие проблемы-то? (я к вопросу темы)
Фоновый поток не реалтайм, а приоритетные потоки - реалтайм.
Тут нет никакой проблемы.
А проблема в том, чтобы при наличии вытесняющей многозадачности низкоприоритетным потокам тоже гарантировать пусть и бОльшее, чем высокоприоритетным потокам, но ГАРАНТИРОВАННОЕ время реакции.

Это проблема хоть и сложней, но вполне решаема.
Я в разработанной мной RTOS её решил

С ваши подходом можно и Windows 10 считать RTOS.
У меня она еще ни разу не зависала, и гарантированно за час откликается на любое событие.

Чем гарантирует время реакции? Своим честным словом? biggrin.gif
Go to the top of the page
 
+Quote Post
mantech
сообщение Nov 3 2017, 08:57
Сообщение #69


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(AlexandrY @ Nov 3 2017, 11:19) *
У меня она еще ни разу не зависала, и гарантированно за час откликается на любое событие.


Да вам везет, у меня винда хоть редко, да зависнет, или ФС слетит при некорректном завершении...
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 3 2017, 09:32
Сообщение #70


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(mantech @ Nov 3 2017, 10:57) *
Да вам везет, у меня винда хоть редко, да зависнет, или ФС слетит при некорректном завершении...

Это не зависания оси, это переход в сервисный режим.
Десктопная винда может себе это позволить, она ж работает под управлением пользователя.
А встроенная винда спокойно обошла бы этот момент.
Go to the top of the page
 
+Quote Post
syoma
сообщение Nov 3 2017, 10:55
Сообщение #71


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

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Цитата(mantech @ Nov 3 2017, 09:11) *
Кто мешает делать критичные ко времени задачи на прерываниях? Никогда проблем с этим не было...

Ну хотя бы доступ к ресурсам железа, не?
Go to the top of the page
 
+Quote Post
Pavia
сообщение Nov 3 2017, 14:39
Сообщение #72


Участник
*

Группа: Участник
Сообщений: 67
Регистрация: 3-02-14
Из: Интернет
Пользователь №: 80 322



Для AlexandrY
Цитата
Это не зависания оси, это переход в сервисный режим.
Десктопная винда может себе это позволить, она ж работает под управлением пользователя.
А встроенная винда спокойно обошла бы этот момент.

И каким же образом она гарантирует реальное время? Неужели честным словом Билла Гейтса? - мне правда интересно.
Никогда с реальным временем не работал. А как другие гарантируют?

Цитата
Кто мешает делать критичные ко времени задачи на прерываниях? Никогда проблем с этим не было...

То что они приходят неизвестно когда и в не своё время. Хотя это можно отрегулировать выше стоящей системой. Как следствие состояние системы неизвестно и окромя как выставить собственный флаг в прерывание вы более ничего не можете. Затем вы должны выйти из прерывания. И если это ОС с вытесняющей многозадачностью, то она должна при первом возможном случае вернуться к обработке прерывания, но уже в определённом состоянии:
а) откладываем текущую и начинаем драйверную задачу.
б) дождаться APC и втиснуть прерывание.
с) синхронизироваться с основным циклом секвенсера.

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

Сообщение отредактировал Pavia - Nov 3 2017, 14:40
Go to the top of the page
 
+Quote Post
Студент заборстр...
сообщение Nov 3 2017, 15:21
Сообщение #73


Местный
***

Группа: Участник
Сообщений: 317
Регистрация: 16-09-17
Пользователь №: 99 334



Цитата(mantech @ Nov 3 2017, 10:11) *
Кто мешает делать критичные ко времени задачи на прерываниях? Никогда проблем с этим не было...

Если поток прерываний слишком большой, он "забьёт" более низкоприоритетные, но все равно реал-таймовые задачи.

Я пошёл по пути гарантированного тайм-слота для задач с приоритетами класса 2

Цитата(AlexandrY @ Nov 3 2017, 11:19) *
С ваши подходом можно и Windows 10 считать RTOS.

С цитированием по внимательней будьте.
Я так понял, это Вы к вот этому:
Цитата
Понятие "реальное время" перпендикулярно тому, через сколько времени ртось среагирует на событие.

Если ртось УСПЕВАЕТ ВОВРЕМЯ среагировать и обработать евент за ДЕТЕРМИНИРОВАННОЕ время и это время устраивает заказчика, значит это ртось. Даже если время реакции сотни милисекунд

К примеру если цикл ПЛК 0.5 секунды то нафига успевать среагировать и обрабатывать евент за микросекунды?

А не к тому, что процитировали

Изучив десятки RTOS, теорию их построения и перепробовав различные варианты построения RTOS я в конце концов вообще я отказался от использования прерываний.
Посколько с ними трудно динамически менять приоритет прерываний как тебе заблагорассудится и жесткий реалтайм для всех потоков трудно реализовать.
Точнее у меня работал только одно прерывание. Таймерное.
Все остальные прерывания работали по механизму поллинга их флагов.
Да получился большой оверхед. В том смысле, что процессор почти 70% времени проводил в таймерном прерывании.

Ну и что?
Проблему решил просто: взял проц с более высокой (на 500% выше чем нужно для моих задач) тактовой. И что? сейчас процессоры стоят дешевле грязи. А вот софт к ним стоит огого. Поэтому лучше купить проц подороже, но сэкономить на софте

Зато реализация RTOS получилась очень простой, красивой и надёжной. И жесткий реалтайм получился ГАРАНТИРОВАННЫМ при вытесняющей многозадачности

Более того.
У меня не только была реализована вытесняющая многозадачность. Но и отсутствие зависания даже самых низкоприоритетных потоков.
Посколько классу низкоприоритетных потоков все равно гарантировался тайм-слот

Проблема дедлоков тоже была решена за счет выбора архитектуры построения RTOS

Таким образом у моей RTOS был только один "минус": 70% времени процессора занимал микродиспетчер, находившийся в таймерном прерывании. Т.е. на диспетчеризацию уходило 70% процессорного времени, а на выполнение "полезной работы" - всего 30%. Но с этим можно смириться. Выбрав более мощный проц

Сообщение отредактировал Студент заборстроительного - Nov 3 2017, 15:24
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 3 2017, 17:03
Сообщение #74


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Студент заборстроительного @ Nov 3 2017, 17:21) *
У меня не только была реализована вытесняющая многозадачность. Но и отсутствие зависания даже самых низкоприоритетных потоков.
Посколько классу низкоприоритетных потоков все равно гарантировался тайм-слот

Это невозможно по логике. Подумайте еще раз над этой формулировкой. Время не резиновое. biggrin.gif
Go to the top of the page
 
+Quote Post
Студент заборстр...
сообщение Nov 3 2017, 17:20
Сообщение #75


Местный
***

Группа: Участник
Сообщений: 317
Регистрация: 16-09-17
Пользователь №: 99 334



Цитата(AlexandrY @ Nov 3 2017, 20:03) *
Это невозможно по логике. Подумайте еще раз над этой формулировкой. Время не резиновое. biggrin.gif

Возможно.
Я даже объяснил как.
Прочитайте несколько раз, что я написал.
Не всегда и не всем с первого раза доходит
Go to the top of the page
 
+Quote Post

13 страниц V  « < 3 4 5 6 7 > » 
Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd June 2025 - 23:38
Рейтинг@Mail.ru


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