|
Пользователям uC/OS,eCOS,jacOS,FreeRTOS,scmRTOS и т.п., Возможен ли в этих ОС режим: 80% времени CPU в ISR |
|
|
2 страниц
< 1 2
|
 |
Ответов
(15 - 25)
|
Mar 16 2008, 02:26
|

Странник
   
Группа: Свой
Сообщений: 766
Регистрация: 29-08-05
Из: Екатеринбург
Пользователь №: 8 051

|
Цитата(Дон Амброзио @ Mar 15 2008, 23:58)  Короче я вижу что благодаря Вашим стараниям ...... А чего ждали, что все кинуться обсуждать неочемную тему? А потом еще выяснилось что вами изобретен " вечный двигатель", который еще и показать нельзя. После этого тему точно можно закрыть, зачем воду в ступе толочь, а "вечный двигатель" пусть трудится...
--------------------
"Как много есть на свете вещей, которые мне не нужны!" Сократ
|
|
|
|
|
Mar 16 2008, 06:52
|
Знающий
   
Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153

|
Цитата(Дон Амброзио @ Mar 15 2008, 19:53)  У меня полноценная (насколько это возможно сделать в условиях: 4Мгц тактовой и Target MCU = ATmega8515 и 512 байт RAM) RTOS, поддерживающая две политики диспетчеризации: карусель со сменой потоков по истечению выделенного им кванта и вытесняющую, со сменой потока по Евентам. ... А можно посмотреть на это чудо (или хотя бы на его интерфейс)? И еще пара вопросов - на чем писали, насколько она универсальна? Если вытесняющая многозадачность - по идее нужны отдельные стеки на каждый процесс - как же вам удалось уложиться в 512 байт?
|
|
|
|
|
Mar 16 2008, 22:23
|

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

|
Цитата(spf @ Mar 16 2008, 05:26)  А чего ждали, что все кинуться обсуждать неочемную тему? Не знаю чего я ждал, но уж чего я никак не ожидал, что сам модератор начнёт заниматься троллингом в моей теме. Я бы Вас всё-таки попросил бы (хоть Вы и модератор) вести себя более политкорректно и воздерживаться от такого рода оценок, а говорить по существу обсуждаемого вопроса. Советую просто не читать мои "неочёмные" темы. От этого только нервы целей будут как у меня, так и у Вас Цитата(Непомнящий Евгений @ Mar 16 2008, 09:52)  И еще пара вопросов - на чем писали, насколько она универсальна? Если вытесняющая многозадачность - по идее нужны отдельные стеки на каждый процесс - как же вам удалось уложиться в 512 байт? Писал на АСМ-е разумеется. Универсальна настолько, что может работать на всех микроконтроллерах AVR. Есть отдельные PC- и DATA-стеки: 8 байт PC-стек и 12 байт DATA-стек на каждую "тяжеловесную" нить P.S. А вообще, Господа, здесь не мной разработанная RTOS обсуждается. Смотрите внимательней головное сообщение темы
Сообщение отредактировал Дон Амброзио - Mar 16 2008, 22:31
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
|
Mar 17 2008, 07:39
|

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

|
Цитата(Дон Амброзио @ Mar 17 2008, 01:23)  Есть отдельные PC- и DATA-стеки: 8 байт PC-стек и 12 байт DATA-стек на каждую "тяжеловесную" нить Отсутствует даже место для сохранения всего контекста задачи. Посему говорить о том, что существует некая "вытесняющая многозадачность" совершенно не приходится. Соответственно такты на "якобы переключение" сравнивать у этой системы и на реальное переключение контекста у систем помянутых в заголовке совершенно бессмысленно. Цитата P.S. А вообще, Господа, здесь не мной разработанная RTOS обсуждается. Смотрите внимательней головное сообщение темы Здесь, с Вашей подачи обсуждается и некоторая "система" которая якобы отбеспечивает заявленные при начале темы параметры. Собственно на "вопросы" в шапке темы, могу еще практически повторить (для реально желающих узнать ответы на вопрос) сказанное другими: - система совершенно спокойно может находится 80% в прерывании; - время реакции на прерывание использующее системные вызовы определяется в основном длительностью критических секций операционной системы из коих самая тяжелая это шедулер и работа с контекстом задач; - для прерываний не использующих системные сервисы, или не использущих некоторве тяжелые, например то-же переключение контекста, при соответствующих усилиях зависящих от возможносей конкретной платфрмы времена реакций могут быть других порядков. - прежде, чем проектировать нечто c 80% загрузкой в прерывании надо крепко подумать о правильности подхода к делу вообще. Цитата ...модератор начнёт заниматься троллингом в моей теме. А подобные завления по отношению ко мне, я оставлю на Вашей совести, хотя, как Модератор попрошу воздержаться от замусоривания тем.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Mar 17 2008, 08:16
|

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

|
Цитата(zltigo @ Mar 17 2008, 10:39)  Отсутствует даже место для сохранения всего контекста задачи. Посему говорить о том, что существует некая "вытесняющая многозадачность" совершенно не приходится. Соответственно такты на "якобы переключение" сравнивать у этой системы и на реальное переключение контекста у систем помянутых в заголовке совершенно бессмысленно. Делаете априори не верное предположение и как следствие не верные выводы. Разве я Вам говорил, что у меня не сохраняется контекст задачи? Очень даже сохраняется: каждой задаче выделяется 16 байт под дамп контекста. Вы, на будущее, если что не ясно - лучше спросите, а не стройте свои домыслы. Вы же не телепат? Или телепат? Цитата(zltigo @ Mar 17 2008, 10:39)  время реакции на прерывание использующее системные вызовы определяется в основном длительностью критических секций операционной системы из коих самая тяжелая это шедулер и работа с контекстом задач; - для прерываний не использующих системные сервисы, или не использущих некоторве тяжелые, например то-же переключение контекста, при соответствующих усилиях зависящих от возможносей конкретной платфрмы времена реакций могут быть других порядков. Во-первых, меня интересовало не совсем то, о чём Вы говорите. Незря же я говорил про такты в головном сообщении темы А во-вторых, Вы отвечаете в общем (не приводя конкретных цифр). А меня интересует конкретная реализация в конкретных, перечисленных в названии темы RTOS, с приведением конкретных цифр
Сообщение отредактировал Дон Амброзио - Mar 17 2008, 08:24
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
|
Mar 17 2008, 13:04
|

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

|
Цитата(Дон Амброзио @ Mar 17 2008, 11:16)  Очень даже сохраняется: каждой задаче выделяется 16 байт под дамп контекста. ... Вы же не телепат? Или телепат? В данном конкретном случае я больше, чем телепат - я знаю, что у AVR 32 регистра общего назначения, которые в поминаемых Вами 16 байтах не сохранить. Посему речь о системе с вытесняющей многозадачностью просто не идет. Даже если Вы и будете повторять "халва...халва...халва" "вытесняющая многозадачность...вытесняющаяя многозадачность" "во рту слаще не станет" это в реальности ничего не изменит. Пока, с каждым Вашим постом я получаю очередное подтверждение своему диагнозу изложенному ранее: Цитата Полагаю, что под "операционкой" которая у Автора топика "получилась", подразумевается на самом деле вариации на тему вечного цикла. Цитата А меня интересует конкретная реализация в конкретных, перечисленных в названии темы RTOS.. Ну так изучите этот вопрос по их исходникам. Узнаете много полезного уже после ознакомления в первыми несколькими.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Mar 17 2008, 15:56
|

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

|
Цитата(zltigo @ Mar 17 2008, 16:04)  В данном конкретном случае я больше, чем телепат - я знаю, что у AVR 32 регистра общего назначения, которые в поминаемых Вами 16 байтах не сохранить. Посему речь о системе с вытесняющей многозадачностью просто не идет. Это уже вообще пипец.... А если б там было 512 регистров? То я долже бы был обязательно их все использовать? А иначе это будет не RTOS? Тем более не вытесняющая?
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
|
Mar 18 2008, 04:34
|
Участник

Группа: Участник
Сообщений: 59
Регистрация: 12-12-05
Пользователь №: 12 125

|
Цитата(Дон Амброзио @ Mar 17 2008, 18:56)  ... А если б там было 512 регистров? То я долже бы был обязательно их все использовать? А иначе это будет не RTOS? Тем более не вытесняющая? Ну так и выкладите исходники, как здесь уже предлагалось. Разговор станет более предметным. :-) А так, бить себя пяткой в грудь и кричать "Да Я, да Я ... !" мы все умеем...
|
|
|
|
|
Mar 18 2008, 07:46
|

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

|
Цитата(Damon @ Mar 18 2008, 07:34)  Ну так и выкладите исходники, как здесь уже предлагалось. Разговор станет более предметным. :-) А так, бить себя пяткой в грудь и кричать "Да Я, да Я ... !" мы все умеем... А Вы тоже считаете, что вытесняющая RTOS или не вытесняющая зависит от того, входят в контекст потока вообще все имеющиеся в процессоре регистры или нет? А насчёт "пятки в грудь" и выкладывания исходников.... Когда я создам тему, посвящённую своей RTOS, тогда и выложу.. А в этой теме речь не о ней.. Прочтите внимательно головное сообщение темы
--------------------
После устранения бага в программе она стала работать....хуже
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|