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

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> Распределение времени между задачами, Зависимость от приоритета.
ViKo
сообщение Feb 22 2016, 08:53
Сообщение #31


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Предлагаю думать не через анус, мутные свойства Windows отложим в долгий ящик (мне она не нужна, просто привел пример), а договоримся, что наличие у ОС таких простейших свойств, как уровень приоритета задач, и задержка на заданное число тиков, волшебным образом превращает ОС в ОСРВ. В дополнение к простоте, из которой и вытекает ее быстрота.
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Feb 22 2016, 09:30
Сообщение #32





Guests






Цитата(ViKo @ Feb 21 2016, 08:35) *
Любая ОС в тех или иных условиях может работать как ОСРВ.


+

В 2003 г. делал и сделал довольно сложную аппаратно-программную систему восстановления всяких железок методом контактной наварки.
Несколько контуров управления ( ток, скорость, давление и пр). Где-то решено аппаратно, но без контроллеров.
Всем заведовала ОС Windows NT в режиме мягкого реал-тайм + самописный софт.
Есть исследования на тему Win NT - как ОСРВ.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 22 2016, 12:55
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (TSerg @ Feb 22 2016, 11:30) *
В 2003 г. делал и сделал довольно сложную аппаратно-программную систему восстановления всяких железок методом контактной наварки.
Несколько контуров управления ( ток, скорость, давление и пр). Где-то решено аппаратно, но без контроллеров.
Всем заведовала ОС Windows NT в режиме мягкого реал-тайм + самописный софт.

Да бога ради. Как раз такой случай:
QUOTE
От того, что, "windows" попадет на железо, которое превосходит требуемую ПИКОВУЮ производительность он не станет RTOS - либо у дедушки есть яйца, либо он бабушка.

Если на Вашей наварке, запустить какую-нибудь суровую игрушку, что отстанется от "мягкого реал-тайм" и каков будет результат работы наварочного комплекса?


QUOTE (ViKo @ Feb 22 2016, 10:53) *
Предлагаю думать не через анус, мутные свойства Windows отложим в долгий ящик (мне она не нужна, просто привел пример),

Тогда незачем было приводить негодные примеры. Может "годный" приведете?
QUOTE
а договоримся, что наличие у ОС таких простейших свойств, как уровень приоритета задач, и задержка на заданное число тиков, волшебным образом превращает ОС в ОСРВ. В дополнение к простоте, из которой и вытекает ее быстрота.

Не превращает. Думайте дальше. Уровень приоритета хоть и через анус, но есть у того-же windows. В чем его непригодность уже, скажем так, намекал ЗАГЛАВНЫМИ буквами. Задержка на "число тиков" тем более есть у windows и в отличие от приоритетов, много более пригодная. Быстрота вытекает не только из простоты, но и производительности целевого железа, так что быстрота это никак не условие RTOS. Реалтаймовость OS начинается на самом деле с другого слова на букву "Д" sm.gif.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Feb 22 2016, 16:36
Сообщение #34


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Цитата(Непомнящий Евгений @ Feb 21 2016, 11:02) *
Фриртос устроена не так. Она дает две возможности
* если приоритет у задач разный, то задача с более высоким приоритетом будет работать, пока она готова (не заснула, не ждет данных из очереди и т.п.)
* если приоритет у задач одинаковый, то они будут работать друг за другом (каждый тик управление будет переходить к следующей задаче)

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


Спасибо.
Как решать задачу, я в принципе понял.
Только ждал, когда прекратиться переливание из пустого в порожнее.
Ну и "подбрасывал дровишек" ;-)
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 22 2016, 16:43
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (misyachniy @ Feb 22 2016, 18:36) *
Как решать задачу, я в принципе понял.
....
Ну и "подбрасывал дровишек" ;-)

Не верю sad.gif. "Мол, все понятно, "дрова-топка-кочегар-паровоз", только вот куда лошадь запрягать, чтобы эта дура поехала?"


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Lagman
сообщение Feb 22 2016, 21:23
Сообщение #36


Знающий
****

Группа: Свой
Сообщений: 875
Регистрация: 28-10-05
Пользователь №: 10 245



Короче, любители windows, давайте проговорим что такое RTOS (Операционная система реального времени) и чем она отличается от ОС общего назначения (если ОС многозадачная, то это не значит что она RTOS). Там даже табличка есть.

Потом определимся, что для каждого процесса реальное время имеет свое "измерение", для управления полетом ракеты это наносекунды или даже пикосекунды, для регулирования температуры печи это минуты (вот тут и windowsNT можно применить но от этого она не станет RTOS).

Потом прочитаем, что надо сделать с ОС общего назначения, чтобы они считались ОСРВ. Например в статье из вики внизу "Е. Хухлаев. Операционные системы реального времени и Windows NT" или почитайте про RTLinux.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Feb 23 2016, 05:04
Сообщение #37


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Начал читать, дошел до жесткого и мягкого порно... пардон, времени, и понял, что напрасно теряю время. Терминов насочиняли всяких, но нигде не говорится, каким же, повторюсь, волшебным образом создается ОСРВ.
"На всякого мудреца довольно простоты" (с)
Go to the top of the page
 
+Quote Post
ar__systems
сообщение Feb 23 2016, 14:15
Сообщение #38


self made
****

Группа: Свой
Сообщений: 855
Регистрация: 7-03-09
Из: Toronto, Canada
Пользователь №: 45 795



Изначальная постановка вопроса "распределение времени пропорционально приоритету" довольно высосанная из пальца. Применима только в очень ограниченном смысле. Скажем, производительность чипа позволяет при 80% процентной загрузке делать все необходимое для его функционирования и есть еще 20 которые мы можем потратить на проигрываание MP3 в фоне. В таком случае да, у нас есть распределение времени между задачами. Но достигается оно естественным образом при правильном задании приоритетов (и я не имею ввиду 8 и 2!) и правильной организации программы. при неправильном не достигается никакак и никакая ос тут не поможет
Go to the top of the page
 
+Quote Post
ViKo
сообщение Feb 23 2016, 15:27
Сообщение #39


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Проигрывание музыки, это только говорится "в фоне", не такая уж низкоприоритетная задача. Нужно успевать регулярно обрабатывать порцию аудиоданных. Независимо от срочности и приоритетов остальных задач. Я дал бы ей максимальный приоритет после прерываний, требующих немедленной реакции.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Feb 23 2016, 15:27
Сообщение #40


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Проигрывание музыки, это только говорится "в фоне", не такая уж низкоприоритетная задача. Нужно успевать регулярно обрабатывать порцию аудиоданных. Независимо от срочности и приоритетов остальных задач. Я дал бы ей максимальный приоритет после прерываний, требующих немедленной реакции.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Feb 23 2016, 15:31
Сообщение #41


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Проигрывание музыки, это только говорится "в фоне", не такая уж низкоприоритетная задача. Нужно успевать регулярно обрабатывать порцию аудиоданных. Независимо от срочности и приоритетов остальных задач. Я дал бы ей максимальный приоритет после прерываний, требующих немедленной реакции.

Оба-на, растроИлся... Где-то ОС дала сбой.
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Feb 23 2016, 17:21
Сообщение #42


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Подброшу немного дровишек.
Задача распределения времени между задачами,(тавтология, но что поделаешь ;-))
возникла у нас в где-то после 1992 года.
Начался перевод телеметрического комплекса TM-120 на современную базу (i8085).
Проблемы с производительностью i8085 не возникало, возникала проблема с производительностью каналов связи.
Обычные модемы обеспечивали обмен 300 бод/с.
Но в среднем обычно 100.
Приоритеты мы поделили, чернобыльская линия 750кВ была уже отключена, 330кВ была максимально приоритетная.
Назначили приоритеты - все хорошо.
Пошел дождь ветер - информация с 110 обрывочна, с 35 - очень редко с 10-ки - вообще нет.
Народ подсуетился и переписал алгоритм. который гарантировал, что ВСЕ задачи опроса телеметрической информации обрабатывались.
Не зависимо от приоритета.
Если задачу активировали - она должна быть выполнена.

Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 23 2016, 18:22
Сообщение #43


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (misyachniy @ Feb 23 2016, 19:21) *
Задача распределения времени между задачами,(тавтология, но что поделаешь ;-))
возникла у нас в где-то после 1992 года.
Начался перевод телеметрического комплекса TM-120 на современную базу (i8085).
Проблемы с производительностью i8085 не возникало, возникала проблема с производительностью каналов связи.
Обычные модемы обеспечивали обмен 300 бод/с.
Но в среднем обычно 100.
Приоритеты мы поделили, чернобыльская линия 750кВ была уже отключена, 330кВ была максимально приоритетная.
Назначили приоритеты - все хорошо.
Пошел дождь ветер - информация с 110 обрывочна, с 35 - очень редко с 10-ки - вообще нет.
Народ подсуетился и переписал алгоритм. который гарантировал, что ВСЕ задачи опроса телеметрической информации обрабатывались.
Не зависимо от приоритета.
Если задачу активировали - она должна быть выполнена.

Квадратных минут полосы и других характеристик. Никакие приметных оптических объектов были бы тогда гипотетические модемы. Сопоставлении галактик с источниками радиоизлучения не показывала никакой. Окнах видимости между облаками пылевой материи. Линии чернобыльские могли бы при сопоставлении галактик с эти­ми источниками радиоизлучения обнаруживалось. Было отдано много и следовало. Группа, более или менее равномерно, без признаков. Располагающихся вне этой площадке ярких 300 бод галактик не проявляли себя в первые.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Feb 23 2016, 20:44
Сообщение #44


Ally
******

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



Цитата(misyachniy @ Feb 23 2016, 19:21) *
Подброшу немного дровишек.
Народ подсуетился и переписал алгоритм. который гарантировал, что ВСЕ задачи опроса телеметрической информации обрабатывались.
Не зависимо от приоритета.
Если задачу активировали - она должна быть выполнена.


А, вот оно что.
Тут путаница однако между задачами и процессами.
В RTOS задача имеет начало и конец.
У процесса начала и конца нет в рабочей фазе приложения.
Для управления выделением времени фоновым процессам в MQX например есть такой планировщик Round Robin Scheduling с параметром time slice.
Каждый процесс дольше чем назначенный ему time slice непрерывно выполняться не может.
Если все процессы имеют одинаковый приоритет, то получается аккуратное распределение времени между процессами.
К реалтайму это не имеет отношения конечно.
И называть эти процессы задачами в контекcте RTOS некорректно.
Либо тогда уж надо называть их фоновыми задачами.
Go to the top of the page
 
+Quote Post

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

 


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


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