-
- Есть серийные изделия, на Мега32 FreeRTOS о 3х процессах крутится. На 128й - о 5ти. - Сидоргек(06.12.2019 09:30)
- Спасибо! - Evgeny_CD(06.12.2019 11:17)
- CoOS -> Про AVR она ничего не знает, но API вполне приличное. В сочетении с ресурсо емкостью :) На форуме высказывали всякие разные мнения о ней, ругили за прибитость гвоздями к одной IDE. Кто-нибудь пробовал ее использовать в сочетании с IAR, Evgeny_CD(10 знак., 04.05.2013 18:22, ссылка)
- Откуда там АВР будет, если её для Cortex-M делали. Про прибитость непонятно - порты для Keil и Iar заявлены. - Apтём(04.05.2013 18:38)
- Пардо, глупость сморозил. - Evgeny_CD(04.05.2013 19:03)
- Откуда там АВР будет, если её для Cortex-M делали. Про прибитость непонятно - порты для Keil и Iar заявлены. - Apтём(04.05.2013 18:38)
- Такие RTOSы пишут ручками. 2 недели работы и Вас ничего боле не заботит. - st256(02.05.2013 16:35)
- Вы и правы, и не правы одновременно :) Evgeny_CD(264 знак., 02.05.2013 16:44)
- Это с отладкой. Я таких RTOS несколько штук написал для нескольких процов. Ничего, работают. Там кода-то кот наплакал. - st256(02.05.2013 17:01)
- вся конфигурация задаётся линкером. одной птичкой "выбросить неиспользуемый код". а вот про отладку +100500, таже CTL иногда поправляется ровлеями в таких местах, которые бы у меня никогда не проявились. проект уже лет 6 как развивается и Mahagam(157 знак., 02.05.2013 16:55)
- Насчет пТычек тонкость есть. При отптимизации, в зависимости от заданных фич ОСи, возможно, изменятся некоторые структуры ОСи. А это тЫчкой в линкере не пропатчишь. Либо говнокод из макросов и #ifdef, либо генерация кода. При помощи C++, иди Evgeny_CD(51 знак., 02.05.2013 17:42)
- Засада в том, что написать тест под 100% code coverage RTOS - задача, сопоставимая по сложности|трудоемкости с задачей собственно написания RTOS. - Evgeny_CD(02.05.2013 17:12)
- Вы и правы, и не правы одновременно :) Evgeny_CD(264 знак., 02.05.2013 16:44)
- RTOSы, которые знают про XMEGA. - Evgeny_CD(01.05.2013 23:25)
- FreeRTOS имеет порт. Но это ОСька на любителя. - Evgeny_CD(02.05.2013 00:01)
- Что-то не видно упоминаний о xmega на их сайте. Или есть неофициальный порт? - Apтём(02.05.2013 17:14)
- Гугл находит массу портов. - Evgeny_CD(02.05.2013 17:35)
- Неоднократно читал о том, что люди приходили в конце концов к FreeRTOS. - Vladimir Ljaschko(02.05.2013 00:06)
- Что-то не видно упоминаний о xmega на их сайте. Или есть неофициальный порт? - Apтём(02.05.2013 17:14)
- FunkOS -> содержит нечто под atxmega256A1. Тонкость в том, что такой камень Атмелом никогда официально не объявлялся :) Evgeny_CD(46 знак., 02.05.2013 00:00, ссылка)
- ChibiOS/RT -> Вроде портировали на XMEGA@IAR -->, но исходников от этого процесса не нашел. - Evgeny_CD(01.05.2013 23:37, ссылка, ссылка)
- В исходниках BeRTOS -> есть поддержка ATxmega32D4 - Evgeny_CD(01.05.2013 23:26 - 23:28, ссылка)
- Что-то не нашёл, точную ссылку не подскажете? - Apтём(01.05.2013 23:46)
- В архиве Evgeny_CD(64 знак., 01.05.2013 23:53)
- Спасибо. То есть в bertos xmega в каком-то виде есть... - Apтём(02.05.2013 00:00)
- В архиве Evgeny_CD(64 знак., 01.05.2013 23:53)
- Что-то не нашёл, точную ссылку не подскажете? - Apтём(01.05.2013 23:46)
- FreeRTOS имеет порт. Но это ОСька на любителя. - Evgeny_CD(02.05.2013 00:01)
- ну как же, классика - uC/OS-II or uC/OS-III - =AlexD=(29.04.2013 12:12)
- Вопрос в ресурсоемкости. Жопой чую, что uC/OS-III не для 2k RAM создавалось. - Evgeny_CD(29.04.2013 12:52)
- Ага, щас фсе бросим и будим писать свой код. - tesla(04.05.2013 18:47)
- Для 2k RAM ОС не нужна. - fk0(29.04.2013 13:00)
- Вопрос в фичастости. Таск свитчер, шедулер и простейшие примитивы синхронизации и влезут, и полензны, и использовать их стоит. Я же не говорю про POSIX. - Evgeny_CD(29.04.2013 13:49)
- Честное управление задачами требует для них раздельного стека. 2k - это очень-очень немного, если еще учесть, что стек выделяется с избытком. - Хитрый Китаец(02.05.2013 22:20)
- Для простой задачи потребление стека расчитать вполне можно. Возможно придётся добавить к полученному числу стек для прерываний. Информацию для расчёта линкер даёт. - Apтём(02.05.2013 23:22)
- До первого вызова чего-то вроде qsort()... - fk0(02.05.2013 23:49)
- стекозанятость нормального qsort`а ~log2(N). +оверхед какой. один раз померять и ссё. - Mahagam(03.05.2013 00:08)
- Померять != линкер даёт. Линкер тут ничего не даст. Да и измерить не всегда можно правильно... - fk0(03.05.2013 00:26)
- Мне qsort не нужен. - Apтём(02.05.2013 23:55)
- стекозанятость нормального qsort`а ~log2(N). +оверхед какой. один раз померять и ссё. - Mahagam(03.05.2013 00:08)
- Вероятно, для компактности лучше иметь отдельный стек для прерываний. - Evgeny_CD(02.05.2013 23:33)
- Лучше, но это уже от прозводителя МК зависит - сделает он такой стек или нет. - Apтём(02.05.2013 23:38)
- Производитель МК не нужен. Достаточно в обработчике переключить стек. - fk0(02.05.2013 23:49)
- Это чревато всякого рода неприятностими. Я сам на них не нарывался, но люди говорят, что бывает. - Apтём(02.05.2013 23:56)
- Говорят, что кур доят. Сделать можно. Кто ниасилил это сделать корректно без глюков -- сам виноват. Другое дело что... накладные расходы большие, лучше аппаратно. - fk0(03.05.2013 00:28)
- Вопрос не в том что можно.Делать там особо и нечего - на входе прерывания SP процесса сохранил, заменил на SP прерываний. На выходе наоборот. Apтём(1052 знак., 03.05.2013 00:36)
- Фуфлология. Тут соглашаться не с чем и читать подобную ерунду я бы не стал. Принципиально сделать можно. Рассматривать же какой-то конкретный авторский говнокод с неведомо каким компилятором... оно того не стоит. Я могу согласиться, лишь с тем, fk0(238 знак., 03.05.2013 00:49)
- Компилятор IAR либо GCC, МК - АВР может ещё какие из любительских. - Apтём(03.05.2013 00:57)
- Надо за деревьями уметь увидеть лес. Компилятор не важно какой. Можно вовсе на ассемблере написать (вход-выход из прерываний). - fk0(03.05.2013 01:50)
- Не знаю где тут лес, где деревья, но что на асме писать муторно - это точно. - Apтём(03.05.2013 02:00)
- Надо за деревьями уметь увидеть лес. Компилятор не важно какой. Можно вовсе на ассемблере написать (вход-выход из прерываний). - fk0(03.05.2013 01:50)
- Компилятор IAR либо GCC, МК - АВР может ещё какие из любительских. - Apтём(03.05.2013 00:57)
- Фуфлология. Тут соглашаться не с чем и читать подобную ерунду я бы не стал. Принципиально сделать можно. Рассматривать же какой-то конкретный авторский говнокод с неведомо каким компилятором... оно того не стоит. Я могу согласиться, лишь с тем, fk0(238 знак., 03.05.2013 00:49)
- Вопрос не в том что можно.Делать там особо и нечего - на входе прерывания SP процесса сохранил, заменил на SP прерываний. На выходе наоборот. Apтём(1052 знак., 03.05.2013 00:36)
- Говорят, что кур доят. Сделать можно. Кто ниасилил это сделать корректно без глюков -- сам виноват. Другое дело что... накладные расходы большие, лучше аппаратно. - fk0(03.05.2013 00:28)
- Это чревато всякого рода неприятностими. Я сам на них не нарывался, но люди говорят, что бывает. - Apтём(02.05.2013 23:56)
- В RL78 ваще 4 банка регистров :) - Evgeny_CD(02.05.2013 23:42)
- Банки это конечно хорошо, если StackPointer переключается, то ещё лучше. RL78, при чём тут RL78 - топик-то про АВР...а у meg/xmeg ни того, ни другого. :( - Apтём(02.05.2013 23:50 - 03.05.2013 00:00)
- Производитель МК не нужен. Достаточно в обработчике переключить стек. - fk0(02.05.2013 23:49)
- Лучше, но это уже от прозводителя МК зависит - сделает он такой стек или нет. - Apтём(02.05.2013 23:38)
- До первого вызова чего-то вроде qsort()... - fk0(02.05.2013 23:49)
- И тут мы подходим к самому интимному моменту компактного осестроения - точному измерению потребления стека каждой задачей. Да, это вопрос вопросов. - Evgeny_CD(02.05.2013 23:16)
- а фигли его мерять? забили стеки при старте хитрожопой константой, а потом в отдельном потоке раз в пару секунд смотрим что изменилось Mahagam(383 знак., 02.05.2013 23:41)
- Как предсказывали потребление, если не секрет? И для каких МК? - Apтём(02.05.2013 23:51)
- навскидку, по количеству переменных и вызовов других функций. оказалось что не сильно-то и вяжется. Mahagam(194 знак., 03.05.2013 00:03)
- Логично что не вяжется: переменные компилятор сотпимизировать может. Apтём(131 знак., 03.05.2013 00:12)
- из либ 99% - memset да memcpy, местами itoa да strncmp. Mahagam(221 знак., 03.05.2013 00:44)
- Сортировать пузырьком -- это попросту неприлично. Есть, например, сортировка Шелла, прекрасно заменяет qsort, не требует рекурсий, работает не сильно хуже... По ссылке весьма наглядная демонстрация. - fk0(03.05.2013 00:51, ссылка)
- видел я эти анимации. Mahagam(80 знак., 03.05.2013 01:05)
- Сортировать пузырьком -- это попросту неприлично. Есть, например, сортировка Шелла, прекрасно заменяет qsort, не требует рекурсий, работает не сильно хуже... По ссылке весьма наглядная демонстрация. - fk0(03.05.2013 00:51, ссылка)
- Помимо рекурсий может быть что-то типа char s[много] или alloca(много). И это много может не являться константой... - fk0(03.05.2013 00:30)
- из либ 99% - memset да memcpy, местами itoa да strncmp. Mahagam(221 знак., 03.05.2013 00:44)
- Логично что не вяжется: переменные компилятор сотпимизировать может. Apтём(131 знак., 03.05.2013 00:12)
- навскидку, по количеству переменных и вызовов других функций. оказалось что не сильно-то и вяжется. Mahagam(194 знак., 03.05.2013 00:03)
- Как предсказывали потребление, если не секрет? И для каких МК? - Apтём(02.05.2013 23:51)
- а фигли его мерять? забили стеки при старте хитрожопой константой, а потом в отдельном потоке раз в пару секунд смотрим что изменилось Mahagam(383 знак., 02.05.2013 23:41)
- Для простой задачи потребление стека расчитать вполне можно. Возможно придётся добавить к полученному числу стек для прерываний. Информацию для расчёта линкер даёт. - Apтём(02.05.2013 23:22)
- Честное управление задачами требует для них раздельного стека. 2k - это очень-очень немного, если еще учесть, что стек выделяется с избытком. - Хитрый Китаец(02.05.2013 22:20)
- как сказать, вот еле удержался чтобы не впихнуть шедулер на мегу16 - Mahagam(29.04.2013 13:33)
- Вопрос в фичастости. Таск свитчер, шедулер и простейшие примитивы синхронизации и влезут, и полензны, и использовать их стоит. Я же не говорю про POSIX. - Evgeny_CD(29.04.2013 13:49)
- Вопрос в ресурсоемкости. Жопой чую, что uC/OS-III не для 2k RAM создавалось. - Evgeny_CD(29.04.2013 12:52)
- составить бы табличку с фичами, а то ж неясно за что хватаццо ) - Mahagam(29.04.2013 10:53)
- И я о том же. Но проанализировать ОСь - это аццкая задача... - Evgeny_CD(29.04.2013 10:56)
- CrossWorks Tasking Library (CTL) -> классика жанра - Evgeny_CD(29.04.2013 00:20, ссылка)
- FunkOS -> --> Видимо, в букве ошиблись :) - Evgeny_CD(29.04.2013 00:15, ссылка, ссылка)
- BeRTOS -> - Evgeny_CD(29.04.2013 00:11, ссылка)
- Списочек осей :) - Evgeny_CD(29.04.2013 00:08, ссылка)
- Femto OS -> Фичи заявлены крайне интересные. --> Свежий релиз вышел в конце 12 года. - Evgeny_CD(29.04.2013 00:02, ссылка, ссылка)
- avr-rtos -> Но жизнь там умерла много-много лет назад. - Evgeny_CD(28.04.2013 23:53, ссылка)
- Кто-нибудь сможет качнуть документик? -> - Evgeny_CD(28.04.2013 23:51, ссылка)
- Тута Make_Pic(02.05.2013 08:31)
- Можете и эту книгу скачать? - Ruslan(02.05.2013 15:01, ссылка)
- Спасибо!!! - Evgeny_CD(02.05.2013 10:13)
- Тута Make_Pic(02.05.2013 08:31)
- Atomthreads: Open Source RTOS -> С докой плохо, так вроде компатная штуковина. - Evgeny_CD(28.04.2013 23:38, ссылка)
- Кооперативка пойдет? По ссылке статистика требований к памяти -> - testerplus(28.04.2013 23:29, ссылка)
- Спасибо! забыл указать - вытеснение надо. - Evgeny_CD(28.04.2013 23:33)
- Есть серийные изделия, на Мега32 FreeRTOS о 3х процессах крутится. На 128й - о 5ти. - Сидоргек(06.12.2019 09:30)