Кооперативная ОС нужна только для одного -- планировщик (большие биг-луп программы слишком много времени тратят на проверку условий в цикле). Но он легко заменяется чем-то вроде libevent. Если срок разработки ПО менее года и работает пара человек -- кооперативная ОС вообще НЕ НУЖНА (ибо маленький объём ПО). Вытесняющая ОС в таком случае всё же может иметь смысл: она более реактивна, обеспечивает меньшее время реакции на события системы в целом.