ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
22 ноября
947250 Топик полностью
abivan (20.09.2019 11:15 - 13:02, просмотров: 689) ответил Dingo на Навеяно топиком -> Собственно, что для вас значит [embedded OS] в контексте МК? Почему вы используете/не используете (вытесняющую, кооперативную, main loop)?
мое персональное виденье. ОС в любом проекте. Если для камня нет оси в топку этот камень. Тут недавно обсуждались камни за рупь(0.03$) так вот там было много камней на базе PIC12 со стеком 2 и без прерываний. Ты не поверишь, установка кооперативной оси на эти камни решает проблему постоянного слежения за переполнением таймера в своем коде(прерываний то нет) и решает проблему глубины стека. Есть проект на Pic18 в нем использую кооперативную ось. Приоритеты задач есть. Но время отклика фиксировано размером системного тика( в моем случае 20мс) все что должно обрабатываться быстрее сделано на прерываниях. Любой кусок задачи должен выполняться быстрее чем время системного тика это в теории, а на практике если задача несколько задержится, то для меня это не критично. Камень обрабатывает запросы с 3-х направлений 2уарта(один PC(56кбод) другой с другого проца(76кбод)) и проприетарный однопроводный протокол(с фиксированной времянкой). Проц работает на частоте 4мгц(F/4=1MIPS) и все успевает. Теперь этот проект претерпел дальнейшее развитие(мало озу) и был перенесен на PIC32 с freertos(вытесняющая). Freertos конечно говно(упоминаю об этом при каждом удобном случае), но мне все равно, ресурсов теперь хоть ж. ешь. Да и в гармонию от майкрочипа она встроена. Написал обертки для нее и код с пик18 под кооперативку перенесся без изменений(почти) на другой камень в другую ось. MMU не использую, потому как не было раньше нечего и начинать, а использую "свой" менеджер памяти(фриртосный не использую). Ну как то так. Я уже писал, но повторюсь.В любом проекте нужно стремиться стать архитектором, а не кодером. А поскольку стать архитектором по должности у меня не получается, есть стремление свести кодерскую составляющую к мимнимуму, А си после ассемблера, а затем и появление ртос этому поспособствовали.