[an error occurred while processing this directive]
Дык это не велосипед, а жизненная необходимость в случае универсального (или многофункционального, если не понравится слово "универсального") контроллера.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Написать ОС и дать возможность пользователю самому проектировать пользовательскую задачу проще, чем писать локальные задачи для каждого случая и по любому запросу пользователей.