-
- Реальных эмбеддерских задач под реальной RTOS до 7 - стандартные пакеты FS, GUI, какой-нить tcpip, и последняя - биглуп для своих извращений. Нефиг фигню фигачить задачами. - VL(18.11.2015 04:13, )
- Уж "7 реальных задач" тоже можно вывернуть до событийно-управляемых автоматов. GUI всю жизнь был событийно-ориентированным и однопоточным, запросто встраивается в существующий цикл обработки событий. TCP тоже автомат (он даже в RFC нарисован!). FS fk0(82 знак., 18.11.2015 10:43)
- Будь все так просто, не было бы RTOS никогда - VL(19.11.2015 00:07, )
- Уж "7 реальных задач" тоже можно вывернуть до событийно-управляемых автоматов. GUI всю жизнь был событийно-ориентированным и однопоточным, запросто встраивается в существующий цикл обработки событий. TCP тоже автомат (он даже в RFC нарисован!). FS fk0(82 знак., 18.11.2015 10:43)
- Есть одна проблема - непонятно как запрещать прерывания на Це. Чтобы не разрушить списки. Потому пока так. Как посетит ценная мысль - переделаю. - LightElf(17.11.2015 15:32)
- В моём понимании, отличие setjmp/longjmp от protothreads только в том, что можно передавать управление из любой глубины вложенности. Недостаток - необходимость выделять отдельные стеки. - SciFi(17.11.2015 12:23)
- в PT тоже можно PT_YIELD из любой вложенности, только нужные переменные сделать статическими - zeleny(18.11.2015 14:58)
- Нет, нельзя. - LightElf(18.11.2015 15:46)
- пруф можно? давно использую, работает при любой вложенности циклов и if-ов - zeleny(18.11.2015 16:32)
- Под вложенностью имею в виду вложенность функций. Вложенность циклов и условий (и свичей :) - это само собой. - LightElf(18.11.2015 17:01)
- Имел в виду вложенные функции. У protothreads для этого есть костыль - PT_SPAWN(). - SciFi(18.11.2015 16:35)
- пруф можно? давно использую, работает при любой вложенности циклов и if-ов - zeleny(18.11.2015 16:32)
- Нет, нельзя. - LightElf(18.11.2015 15:46)
- Именно так. Есть существенный момент - чужие готовые библиотеки могут использовать локальные переменные. Заворачивание их мехом наружу может быть весьма утомительным. - LightElf(17.11.2015 15:35)
- Ну всё-таки локальные переменные на всех уровнях у него сохраняются, в отличии от. Наговнокодить сложнее и программировать проще. И можно, потенциально, сделать полноценный планировщик (в котором сложность алгоритма не пропорциональна числу задач fk0(135 знак., 17.11.2015 12:39)
- только какая цена этого сохранения/восстановления - в циклах и памяти ? - zeleny(18.11.2015 15:00)
- Как и в любой другой многозадачке. И даже меньше, хотя и не намного. - LightElf(18.11.2015 15:47)
- только какая цена этого сохранения/восстановления - в циклах и памяти ? - zeleny(18.11.2015 15:00)
- в PT тоже можно PT_YIELD из любой вложенности, только нужные переменные сделать статическими - zeleny(18.11.2015 14:58)
- Реальных эмбеддерских задач под реальной RTOS до 7 - стандартные пакеты FS, GUI, какой-нить tcpip, и последняя - биглуп для своих извращений. Нефиг фигню фигачить задачами. - VL(18.11.2015 04:13, )