Como una especie de opuesto a esta pregunta: "Is low-level embedded systems programming hard for software developers" Me gustaría pedir consejo sobre cómo pasar de los sistemas integrados de bajo nivel a la programación para sistemas más avanzados con sistema operativo, especialmente Linux incorporado.¿Cómo pasar de los microcontroladores al linux integrado?
He trabajado principalmente con hardware y software de microcontroladores pequeños, pero ahora solo uso software. Mi educación también consiste en hardware y cosas integradas principalmente. No he tenido muchos cursos de programación y no sé mucho sobre diseño de software o codificación OO.
Ahora tengo un gran proyecto en mis manos que se va a hacer en Linux incorporado. Tengo grandes problemas para diseñar cosas y mantener las cosas manejables porque realmente no tenía que hacer eso antes. También hacer uso de llamadas multitarea y bloqueo en lugar de ejecutar tareas "paralelas" desde la función principal es como otro mundo.
¿Qué tipo de experiencias tiene al pasar de la programación de bajo nivel a sistemas más grandes con sistema operativo (Linux)? ¿Qué fue difícil y cómo lo resolvió? ¿Qué tipo de mentalidad se necesita?
¿Valdría la pena aprender C++ desde cero o continuar usando C simple?
Votación para cerrar como demasiado amplia. –