|
Пользователям uC/OS,eCOS,jacOS,FreeRTOS,scmRTOS и т.п., Возможен ли в этих ОС режим: 80% времени CPU в ISR |
|
|
|
 |
Ответов
|
Mar 15 2008, 15:21
|

Местный
  
Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947

|
Цитата(spf @ Mar 15 2008, 16:11)  При указанных загрузках процессора в ISR (еще не известно в них должны использоваться сервис или нет) полноценно использовать OS не получиться (с сервисами в ISR просто невозможно). У меня получилось... Меня интересовало: а как с этим дело обстоит во всяких юкосах/микосах/эмбедед-линуксуниксах/эсцээмРтосах? Они это позволяют сделать? Цитата(AlexandrY @ Mar 15 2008, 16:37)  А вот с тактами напряженка, никто их прецизионно не считает Да я не предлагаю их считать, просто прикинув частоту прерываний я написал, что они будут происходить каждые 200 тактов и спросил справяться ли RTOS, используемые участниками форума с такой задачей Цитата(sergeeff @ Mar 15 2008, 16:58)  или прерывания прут сплошным потоком? Да Цитата(AlexandrY @ Mar 15 2008, 17:45)  Есть прерывания вообще вне контекста операционки. Вот они обычно и занимают много времени, хоть до 90% поскольку обслуживают скоростную периферию. Вот их то я имею в виду в своём вопросе
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
|
Mar 15 2008, 16:00
|

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

|
Тут вы зацепили за живое, конечно. В портах публикуемых для uCOS действительно нет техники и примеров реализации ISR вне контекста RTOS и как в них сохранить связь с RTOS. Это глубоко интимное дело для каждого семейства микроконтроллеров. Решение всегда находится, но непереносимое на другие платформы. Поэтому оно наверно и не обсуждается в рамках RTOS, это дело драйверов и BSP. Цитата(Дон Амброзио @ Mar 15 2008, 19:51)  У меня получилось... Меня интересовало: а как с этим дело обстоит во всяких юкосах/микосах/эмбедед-линуксуниксах/эсцээмРтосах? Они это позволяют сделать? Да я не предлагаю их считать, просто прикинув частоту прерываний я написал, что они будут происходить каждые 200 тактов и спросил справяться ли RTOS, используемые участниками форума с такой задачей Да Вот их то я имею в виду в своём вопросе
|
|
|
|
|
Mar 15 2008, 16:53
|

Местный
  
Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947

|
Цитата(zltigo @ Mar 15 2008, 19:06)  Полагаю, что под "операционкой" которая у Автора топика "получилась", подразумевается на самом деле вариации на тему вечного цикла Откуда такие предположения? Когда что-то кажется - креститься надо. У меня полноценная (насколько это возможно сделать в условиях: 4Мгц тактовой и Target MCU = ATmega8515 и 512 байт RAM) RTOS, поддерживающая две политики диспетчеризации: карусель со сменой потоков по истечению выделенного им кванта и вытесняющую, со сменой потока по Евентам. Причём вытесняющая политика поддерживает как статические так и динамические приоритеты потоков. Поддерживаются блокирующие ине блокирующие сервисы ядра.. Монопольный режим захвата CPU (при отключенной диспетчеризации). Да много чего ещё....
Сообщение отредактировал Дон Амброзио - Mar 15 2008, 16:58
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
|
Mar 15 2008, 17:07
|

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

|
Цитата(Дон Амброзио @ Mar 15 2008, 19:53)  карусель со сменой потоков по истечению выделенного им кванта... Вы уж как-то определитесь либо карусель, либо кому-то кванты времени выделяют и тогда это не карусель из потоков  . Цитата Откуда такие предположения? Естественно, только исключительно из чтения Ваших сообщений. Коих, впочем, достаточно много для того, что-бы составить мнение.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Mar 15 2008, 17:30
|

Местный
  
Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947

|
Цитата(zltigo @ Mar 15 2008, 20:07)  Вы уж как-то определитесь либо карусель, либо кому-то кванты времени выделяют и тогда это не карусель из потоков  . Не собираюсь дальше упражняться с Вами в жонглировании терминологией и заниматься схоластикой (говоря по простому флудом).. Может я не настолько силён в терминологии (или просто мы с Вами читали разные книги и доки), но я разработал свою RTOS (не знаю как Вы?). И она прекрасно работает. Если у Вас есть что сказать по существу вопроса - говорите.. А флуд не украшает на форуме даже Админа. И если Вы делаете какие-то свои умозаключения из моих сообщений, я бы попросил Вас приводить тогда цитаты, на основании которых Вы делаете такие умозаключения И кстати Вы правы... Поспешишь-людей насмешишь... Никакие не равные кванты времени у меня выделяются каждому потоку карусели... Следующий поток в карусели запускается после того как предыдущий сам по свой инициативе пошлёт сигнал ядру типа "я закончил" А через равные кванты времени у меня запускается не очередной поток карусели, а вся карусель (т.е. диспетчер карусели). Вот я и описАлся. Т.е. через равные промежутки времени у меня управление передаётся диспетчеру карусели, который начинает крутить свои потоки пока его не вытеснят... Т.е. я реализовал это так, чтобы низкоприоритетной каруселе по-любому доставалось время.
Сообщение отредактировал Дон Амброзио - Mar 15 2008, 17:49
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
|
Mar 15 2008, 18:05
|

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

|
Цитата(Дон Амброзио @ Mar 15 2008, 20:30)  ..но я разработал свою RTOS (не знаю как Вы?). Пожалуй три штуки. Естественно, то, что не стыдно (не жонглируя терминами на карусели) операционной системой назвать. Последние годы веду собственную веточку FreeRTOS. Цитата Если у Вас есть что сказать по существу вопроса - говорите. По существу, насколько можно было, ответил AlexandrY. Добавить особо нечего из-за собственно отсутствия сколь-нибудь конкретного вопроса. Цитата А флуд не украшает... Вот именно, посему разговоры в стиле "А у нас в квартире газ операционная система, а у вас?" не стоило даже начинать.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Mar 15 2008, 18:15
|

Местный
  
Группа: Участник*
Сообщений: 323
Регистрация: 11-02-08
Пользователь №: 34 947

|
Цитата(zltigo @ Mar 15 2008, 21:05)  Вот именно, посему разговоры в стиле "А у нас в квартире газ операционная система, а у вас?" не стоило даже начинать. Если Вы не заметили, то привожу "шапку" этой темы Цитата(Дон Амброзио @ Mar 15 2008, 11:02)  Вопрос к пользователям наиболее часто обсуждаемых здесь embedded операционных систем: 1)можно ли в них организовать режим когда процессор будет 80% времени находиться в ISR? Т.е. прерывания идут с такой большой частотой, что процессор 80% времени занимается обработкой прерываний. Или такой режим нагрузки в этих ОС не предусмотрен? 2) Можно ли получить в них частоту следования прерываний каждые 200 тактов (200Т) процессора при том что сам обработчик прерывания (ISR) выполняется 150Т? Если нет, то какая максимальная частота (выраженная в тактах) поддерживается? P.S. zltigo !!! Несколько раз прочитал все сообщения в теме...Как не старался не смог НИ ОДНОГО СЛОВА найти из всех Ваших высказываний, хотя бы отдалённо относящихся к теме... И тогда какой смысл Вашего литературного творчества в этой теме? Как другие участники не будут флудить если сам Админ флудит и появляется в теме, чтобы просто посеять недовольство автором темы
Сообщение отредактировал Дон Амброзио - Mar 15 2008, 18:29
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
Сообщений в этой теме
Дон Амброзио Пользователям uC/OS,eCOS,jacOS,FreeRTOS,scmRTOS и т.п. Mar 15 2008, 08:02 AlexandrY Не.., отлично будет работать. 20% же остается.
У ... Mar 15 2008, 13:37         zltigo Цитата(Дон Амброзио @ Mar 15 2008, 21:15)... Mar 15 2008, 18:46          Дон Амброзио Цитата(zltigo @ Mar 15 2008, 21:46) Я гов... Mar 15 2008, 18:58           spf Цитата(Дон Амброзио @ Mar 15 2008, 23:58)... Mar 16 2008, 02:26            Дон Амброзио Цитата(spf @ Mar 16 2008, 05:26) А чего ж... Mar 16 2008, 22:23             zltigo Цитата(Дон Амброзио @ Mar 17 2008, 01:23)... Mar 17 2008, 07:39              Дон Амброзио Цитата(zltigo @ Mar 17 2008, 10:39) Отсут... Mar 17 2008, 08:16               zltigo Цитата(Дон Амброзио @ Mar 17 2008, 11:16)... Mar 17 2008, 13:04                Дон Амброзио Цитата(zltigo @ Mar 17 2008, 16:04) В дан... Mar 17 2008, 15:56                 Damon Цитата(Дон Амброзио @ Mar 17 2008, 18:56)... Mar 18 2008, 04:34                  Дон Амброзио Цитата(Damon @ Mar 18 2008, 07:34) Ну так... Mar 18 2008, 07:46                   zltigo Цитата(Дон Амброзио @ Mar 18 2008, 10:46)... Mar 18 2008, 16:44     Непомнящий Евгений Цитата(Дон Амброзио @ Mar 15 2008, 19:53)... Mar 16 2008, 06:52      IgorKossak Цитата(Непомнящий Евгений @ Mar 16 2008, 08... Mar 16 2008, 08:22 sergeeff Много написано, что всегда и везде необходимо обес... Mar 15 2008, 13:58 AlexandrY Зря значит писали.
Есть разные подходы в операцион... Mar 15 2008, 14:45
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|