En general, no usaría un sistema operativo en algo que esté realizando verdaderas tareas de microcontroladores. En tales casos, el sistema operativo se interpone más de lo que ayuda. Los sistemas operativos se tratan de virtualizar los recursos de hardware y proporcionar abstracciones como subprocesos y procesos. Estas cosas son de poca utilidad cuando el hardware que está manejando es fácil de controlar directamente, no hay problema de portabilidad y no es el tipo de cosa que los sistemas operativos virtualizan para usted de todos modos. Los sistemas operativos de propósito general tampoco manejan bien los requisitos de tiempo real, o lo son en absoluto, y eso es algo que a menudo es importante en las aplicaciones de verdadero controlador.
La razón por la que a veces se ven sistemas operativos en microcontroladores de gama alta es porque esos procesadores realmente se utilizan como computadoras integradas, no como controladores. Cuando desee conectarse a un teclado o mouse estándar, manejar una pantalla estándar, conectarse a una red, ser un host USB, almacenar archivos en una estructura de árbol arbitraria o hacer alguna de las otras cosas con las que el sistema operativo está destinado a ayudar, entonces un sistema operativo puede ser útil.